# zem_contact_reborn v4.0.3.16
# Form mailer for Textpattern
# TXP Community
# http://forum.textpattern.com/viewtopic.php?id=12956

# ......................................................................
# This is a plugin for Textpattern - http://textpattern.com/
# To install: textpattern > admin > plugins
# Paste the following text into the 'Install plugin' box:
# ......................................................................

YTo5OntzOjc6InZlcnNpb24iO3M6ODoiNC4wLjMuMTYiO3M6NjoiYXV0aG9yIjtzOjEzOiJU
WFAgQ29tbXVuaXR5IjtzOjEwOiJhdXRob3JfdXJpIjtzOjUxOiJodHRwOi8vZm9ydW0udGV4
dHBhdHRlcm4uY29tL3ZpZXd0b3BpYy5waHA/aWQ9MTI5NTYiO3M6MTE6ImRlc2NyaXB0aW9u
IjtzOjI3OiJGb3JtIG1haWxlciBmb3IgVGV4dHBhdHRlcm4iO3M6NDoidHlwZSI7aTowO3M6
NDoibmFtZSI7czoxODoiemVtX2NvbnRhY3RfcmVib3JuIjtzOjQ6ImhlbHAiO3M6MjA0NTA6
Igo8ZGl2IHN0eWxlPSJ0ZXh0LWFsaWduOmNlbnRlcjtmb250LXdlaWdodDpib2xkO2ZvbnQt
c2l6ZToyNHB4O3RleHQtZGVjb3JhdGlvbjp1bmRlcmxpbmU7Ij5aZW0gQ29udGFjdCBSZWJv
cm48L2Rpdj4KCTxwPkluaXRpYWxseSBiYXNlZCB1cG9uIHplbV9jb250YWN0IDAuNiBmcm9t
IHplbS4gQ29kZSBjb21wbGV0ZWx5IHJldmlzZWQgYnkgTWFyeS4gVHVybmVkIGludG8gYSBw
bHVnLWluIHdpdGggdGhlIGFkZGl0aW9uIG9mIHJldmlzZWQgSGVscCB0ZXh0IGJ5IFN0dWFy
dC4gQWRkaXRpb25hbCBjb2RlIGZyb20gU3R1YXJ0LCBUcmFucXVpbGxvLCBhc2xzdzY2IGFu
ZCBqZHlrYXN0LiBNYWludGFpbmVkIGJ5IFN0dWFydCBhbmQgdGVzdGVkIHRvIGRlc3RydWN0
aW9uIGJ5IHRoZSBUZXh0cGF0dGVybiBjb21tdW5pdHkuIElmIHlvdSBoYXZlIGFueSBwcm9i
bGVtcyB1c2luZyB0aGlzIHBsdWctaW4gb3Igc2VlIGFueSBidWdzIGFyb3VuZCBwbGVhc2Ug
Z28gdG8gdGhlIDxzdHJvbmc+PGEgaHJlZj0iaHR0cDovL2ZvcnVtLnRleHRwYXR0ZXJuLmNv
bS92aWV3dG9waWMucGhwP2lkPTEzNDE2Ij5mb3J1bSB0aHJlYWQ8L2E+PC9zdHJvbmc+IGFu
ZCB0ZWxsIHVzIGFib3V0IGl0LiBJZiB5b3UgZG9uJiM4MjE3O3QsIHdlIHdvbiYjODIxNzt0
IGtub3cuPC9wPgoJPHA+PHN0cm9uZz5QbGVhc2Ugbm90ZSB0aGF0IHRoaXMgcGx1Zy1pbiBu
b3cgdXNlcyBhIHNlcGFyYXRlIGxhbmd1YWdlIHBsdWctaW4gJiM4MjExOyA8Y29kZT56ZW1f
Y29udGFjdF9sYW5nPC9jb2RlPiAmIzgyMTE7IGFuZCBib3RoIHBsdWctaW5zIGFyZSByZXF1
aXJlZCB0byBiZSBpbnN0YWxsZWQgYW5kIGFjdGl2YXRlZCB0byB3b3JrIHByb3Blcmx5Ljwv
c3Ryb25nPjwvcD4KCTxwPjxzdHJvbmc+VG8gdGFrZSBhZHZhbnRhZ2Ugb2YgdGhlIG5ldyBB
UEkgdGhhdCBoYXMgYmVlbiBhZGRlZCB0byBaZW0gQ29udGFjdCBSZWJvcm4geW91IG5lZWQg
dG8gaGF2ZSBhIDNyZC1wYXJ0eSBwbHVnLWluIHRoYXQgaGFzIGJlZW4gZGVzaWduZWQgdG8g
JiM4MjIwO2Nvbm5lY3QmIzgyMjE7IHRvIFplbSBDb250YWN0IFJlYm9ybi48L3N0cm9uZz48
L3A+Cgk8cD48c3Ryb25nPkZvciB0aG9zZSBvZiB5b3UgcmVxdWlyaW5nIHNwYW0gcHJldmVu
dGlvbiBqdXN0IHN1Y2ggYSBwbHVnLWluIGV4aXN0cywgVHJhbnF1aWxsbyYjODIxNztzIDxj
b2RlPnBhcF9jb250YWN0X2NsZWFuZXI8L2NvZGU+Ljwvc3Ryb25nPjwvcD4KCTxwPjxzdHJv
bmc+Rm9yIHBsdWctaW4gZGV2ZWxvcGVycyB3aG8gd291bGQgbGlrZSB0byBrbm93IG1vcmUg
YWJvdXQgdGhpcyBwbHVnLWluJiM4MjE3O3MgQVBJIHBsZWFzZSBzZWUgPGEgaHJlZj0iI2Fw
aSI+JiM4MjIwO1plbSBDb250YWN0IFJlYm9ybiYjODIxNztzIEFQSSYjODIyMTs8L2E+IGJl
bG93Ljwvc3Ryb25nPjwvcD4KCTxwPjxhIGhyZWY9IiNjb250YWN0Ij48c3Ryb25nPiAmIzYw
O3R4cDp6ZW0mIzk1O2NvbnRhY3QmIzYyOyA8L3N0cm9uZz48L2E+IHByb2R1Y2VzIGEgZmxl
eGlibGUsIGN1c3RvbWlzYWJsZSBlbWFpbCBjb250YWN0IGZvcm0uIEl0IGlzIGludGVuZGVk
IGZvciB1c2UgYXMgYW4gZW5xdWlyeSBmb3JtIGZvciBjb21tZXJjaWFsIGFuZCBwcml2YXRl
IHNpdGVzLCBhbmQgaW5jbHVkZXMgc2V2ZXJhbCBmZWF0dXJlcyB0byBoZWxwIHJlZHVjZSBj
b21tb24gcHJvYmxlbXMgd2l0aCBzdWNoIGZvcm1zIChpbnZhbGlkIGVtYWlsIGFkZHJlc3Nl
cywgbWlzc2luZyBpbmZvcm1hdGlvbikuPC9wPgoJPHA+PGEgaHJlZj0iI2FydGljbGUiPjxz
dHJvbmc+ICYjNjA7dHhwOnplbSYjOTU7Y29udGFjdCYjOTU7c2VuZCYjOTU7YXJ0aWNsZSYj
NjI7IDwvc3Ryb25nPjwvYT4gY2FuIGJlIHVzZWQgdG8gY3JlYXRlIGEgJiM4MjIwO3NlbmQg
YXJ0aWNsZSYjODIyMTsgbGluayB3aXRoaW4gYW4gYXJ0aWNsZSBmb3JtLCBjb25uZWN0aW5n
IGl0IHRvIHRoZSBjb250YWN0IGZvcm0uPC9wPgoJPHAgc3R5bGU9InRleHQtYWxpZ246Y2Vu
dGVyOyI+PHN0cm9uZz48ZW0+RmVhdHVyZXM8L2VtPjwvc3Ryb25nPjwvcD4KCTx1bD4KCQk8
bGk+QXJiaXRyYXJ5IHRleHQgZmllbGRzIGNhbiBiZSBzcGVjaWZpZWQsIHdpdGggbWluL21h
eC9yZXF1aXJlZCBzZXR0aW5ncyBmb3IgdmFsaWRhdGlvbi48L2xpPgoJCTxsaT5FbWFpbCBh
ZGRyZXNzIHZhbGlkYXRpb24sIGluY2x1ZGluZyBhIGNoZWNrIGZvciBhIHZhbGlkIE1YIHJl
Y29yZCAoVW5peCBvbmx5KS48L2xpPgoJCTxsaT5TYWZlIGVzY2FwaW5nIG9mIGlucHV0IGRh
dGEuPC9saT4KCQk8bGk+QWNjZXNzaWJsZSBmb3JtIGxheW91dCwgaW5jbHVkaW5nIDxjb2Rl
PiZsdDtsYWJlbCZndDs8L2NvZGU+LCA8Y29kZT4mbHQ7bGVnZW5kJmd0OzwvY29kZT4gYW5k
IDxjb2RlPiZsdDtmaWVsZHNldCZndDs8L2NvZGU+IHRhZ3MuPC9saT4KCQk8bGk+QWxsIGxh
YmVscywgaW5wdXRzIGFuZCB0aGUgdGV4dGFyZWEgaGF2ZSB0aGVpciBvd24gJiM4MjIwO2lk
JiM4MjIxOyBhbmQgJiM4MjIwO2NsYXNzJiM4MjIxOy48L2xpPgoJCTxsaT5TcGVjaWFsIGNs
YXNzZXMgZm9yIGxhYmVscywgaW5wdXRzIGFuZCB0aGUgdGV4dGFyZWEgZm9yIHdoZW4gPGNv
ZGU+ZXJyb3I8L2NvZGU+IG1lc3NhZ2VzIGFyZSBvdXRwdXQuPC9saT4KCQk8bGk+U3BlY2lh
bCBjbGFzc2VzIGZvciBsYWJlbHMsIGlucHV0cyBhbmQgdGhlIHRleHRhcmVhIGlmIHRoZSBh
dHRyaWJ1dGUgPGNvZGU+cmVxdWlyZWQ9InllcyI8L2NvZGU+IGlzIHVzZWQuPC9saT4KCQk8
bGk+QSBzcGVjaWFsIGNsYXNzIGZvciB0aGUgZXJyb3IgbWVzc2FnZXMgdGhlbXNlbHZlcy48
L2xpPgoJCTxsaT5BIHNlcGFyYXRlIGxhbmd1YWdlIHBsdWctaW4gdG8gZW5hYmxlIGVhc3kg
PGVtPmxvY2FsaXNhdGlvbjwvZW0+LjwvbGk+CgkJPGxpPlNwYW0gcHJldmVudGlvbi48L2xp
PgoJPC91bD4KCTxwPkZvciBhIGJyaWVmIGV4cGxhbmF0aW9uIG9uIHRoZSBzcGVjaWFsIGNs
YXNzZXMgc2VlIDxzdHJvbmc+PGEgaHJlZj0iI3N0eWxpbmciPlN0eWxpbmc8L2E+PC9zdHJv
bmc+IGJlbG93LjwvcD4KCTxwIHN0eWxlPSJ0ZXh0LWFsaWduOmNlbnRlcjsiPjxzdHJvbmc+
PGVtPkV4YW1wbGVzPC9lbT48L3N0cm9uZz48L3A+Cgk8cD5UaGUgc2ltcGxlc3QgZm9ybSBp
cyB0aGlzOi08L3A+Cgk8cD4mIzYwO3R4cDp6ZW0mIzk1O2NvbnRhY3QgdG8mIzYxOyYjMzQ7
ZGVzdEBleGFtcGxlLmNvbSYjMzQ7IC8mIzYyOyB3aGljaCBwcm9kdWNlcyBhIGRlZmF1bHQg
Zm9ybSB3aXRoIE5hbWUsIEVtYWlsIGFuZCBNZXNzYWdlIGZpZWxkcy4gRW1haWwgd2lsbCBi
ZSBkZWxpdmVyZWQgdG8gZGVzdEBleGFtcGxlLmNvbSwgd2l0aCB0aGUgdXNlciYjODIxNztz
IHN1cHBsaWVkIGVtYWlsIGFzIHRoZSAmIzgyMjA7RnJvbTomIzgyMjE7IGFkZHJlc3MuPC9w
PgoJPHA+VG8gc3BlY2lmeSBmaWVsZHMgZXhwbGljaXRseSwgdXNlIHNvbWV0aGluZyBsaWtl
IHRoaXM6LTwvcD4KCTxwPiYjNjA7dHhwOnplbSYjOTU7Y29udGFjdCB0byYjNjE7JiMzNDtk
ZXN0QGV4YW1wbGUuY29tJiMzNDsmIzYyOzxiciAvPgomIzYwO3R4cDp6ZW0mIzk1O2NvbnRh
Y3QmIzk1O2VtYWlsIC8mIzYyOzxiciAvPgomIzYwO3R4cDp6ZW0mIzk1O2NvbnRhY3QmIzk1
O3RleHQgbGFiZWwmIzYxOyYjMzQ7UGhvbmUmIzM0OyBtaW4mIzYxOzcgLyYjNjI7PGJyIC8+
CiYjNjA7dHhwOnplbSYjOTU7Y29udGFjdCYjOTU7dGV4dGFyZWEgbGFiZWwmIzYxOyYjMzQ7
RW5xdWlyeSYjMzQ7IC8mIzYyOzxiciAvPgomIzYwO3R4cDp6ZW0mIzk1O2NvbnRhY3QmIzk1
O3N1Ym1pdCBsYWJlbCYjNjE7JiMzNDtFbnF1aXJlJiMzNDsgLyYjNjI7PGJyIC8+CiYjNjA7
L3R4cDp6ZW0mIzk1O2NvbnRhY3QmIzYyOzwvcD4KCTxwPkFsdGVybmF0aXZlbHksIHBsYWNl
IHRoZSBmaWVsZCBzcGVjaWZpY2F0aW9ucyBpbiBhIFRleHRwYXR0ZXJuIGZvcm0sIGFuZCBj
YWxsIGl0IGxpa2UgdGhpczo8L3A+Cgk8cD4mIzYwO3R4cDp6ZW0mIzk1O2NvbnRhY3QgdG8m
IzYxOyYjMzQ7ZGVzdEBleGFtcGxlLmNvbSYjMzQ7IGZvcm0mIzYxOyYjMzQ7bXljb250YWN0
Zm9ybSYjMzQ7IC8mIzYyOzwvcD4KCTxwPm9yIGluY2x1ZGUgdGhlIGFib3ZlIHRhZyBpbiB5
b3VyIGZvcm0gYXMgd2VsbCBhbmQgY2FsbCBpdCB3aXRoIHRoZSAmIzYwO3R4cDpvdXRwdXQm
Izk1O2Zvcm0mIzYyOyB0YWcuPC9wPgogPGhyIC8+Cgk8cCBzdHlsZT0idGV4dC1hbGlnbjpj
ZW50ZXI7Ij48c3Ryb25nPjxlbT5JbmRpdmlkdWFsIFRhZ3M8L2VtPjwvc3Ryb25nPjwvcD4K
IDxwIGlkPSJjb250YWN0Ij48c3Ryb25nPiAmIzYwO3R4cDp6ZW0mIzk1O2NvbnRhY3QgLyYj
NjI7IDwvc3Ryb25nPjwvcD4KCTxwPk1heSBiZSB1c2VkIGFzIGEgc2VsZi1jbG9zaW5nIG9y
IGNvbnRhaW5lciB0YWcuIFBsYWNlIHRoaXMgd2hlcmUgeW91IHdhbnQgdGhlIGlucHV0IGZv
cm0gdG8gZ28uIFN0YXR1cyBhbmQgZXJyb3IgbWVzc2FnZXMsIGlmIGFueSwgd2lsbCBiZSBk
aXNwbGF5ZWQgYmVmb3JlIHRoZSBmb3JtLjwvcD4KCTxwPkF0dHJpYnV0ZXM6LTwvcD4KCTx1
bD4KCQk8bGk+PHN0cm9uZz5jb3B5c2VuZGVyPC9zdHJvbmc+ICYjODIxMTsgVXNpbmcgPGNv
ZGU+Y29weXNlbmRlcj0ieWVzIjwvY29kZT4gd2lsbCBzZW5kIGEgY29weSBvZiB0aGUgZW1h
aWwgdG8gdGhlIHNlbmRlciYjODIxNztzIGFkZHJlc3MgYXMgd2VsbCBhcyB0aGUgJiM4MjIw
O3RvJiM4MjIxOyBhZGRyZXNzIHRoYXQgeW91IGhhdmUgc2V0IGluIHRoZSB0YWcgb3IgJiM4
MjIwO3RvX2Zvcm0mIzgyMjE7LiBJbiBvcmRlciB0byBub3Qgc2hvdyB0aGUgeW91ciAmIzgy
MjA7dG8mIzgyMjE7IGFkZHJlc3Mgb24gdGhlIHNlbmRlciYjODIxNztzIGNvcHkgaXQgaXMg
dHJhbnNmZXJyZWQgdG8gdGhlICYjODIyMDtCY2MmIzgyMjE7IGZpZWxkIGFuZCB0aGUgc2Vu
ZGVyJiM4MjE3O3MgYWRkcmVzcyBiZWNvbWVzIHRoZSAmIzgyMjA7dG8mIzgyMjE7IGFkZHJl
c3MuIFRoaXMgbWVhbnMgdGhhdCBhcyBib3RoIGNvcGllcyBhcmUgaWRlbnRpY2FsIHlvdXIg
JiM4MjIwO3RvJiM4MjIxOyBhZGRyZXNzIHdpbGwgbm90IGJlIHNob3duIG9uIHlvdXIgY29w
eSBlaXRoZXIuIERlZmF1bHQgaXMgJiM4MjIwO25vJiM4MjIxOy4gT3B0aW9uYWwuPC9saT4K
CQk8bGk+PHN0cm9uZz5mb3JtPC9zdHJvbmc+ICYjODIxMTsgVGhlIG5hbWUgb2YgeW91ciBm
b3JtIHRlbXBsYXRlIGNvbnRhaW5pbmcgdGhlIGZpZWxkIGxheW91dC4gT3B0aW9uYWwuPC9s
aT4KCQk8bGk+PHN0cm9uZz5mcm9tPC9zdHJvbmc+ICYjODIxMTsgdXNlcyB0aGUgYWRkcmVz
cyBzcGVjaWZpZWQgaW4gdGhpcyBhdHRyaWJ1dGUgaW4gdGhlICYjODIyMDtGcm9tOiYjODIy
MTsgZmllbGQgd2hlbiBzZW5kaW5nIGVtYWlsLiBJZiBubyA8Y29kZT5mcm9tPC9jb2RlPiBh
dHRyaWJ1dGUgaXMgc3BlY2lmaWVkLCB0aGUgc2VuZGVyJiM4MjE3O3MgZW1haWwgYWRkcmVz
cyB3aWxsIGJlIHVzZWQgZm9yIHRoZSAmIzgyMjA7RnJvbTomIzgyMjE7IGZpZWxkLiBXaGVu
IDxjb2RlPmZyb208L2NvZGU+IGF0dHJpYnV0ZSBpcyBzcGVjaWZpZWQsIHRoZSBzZW5kZXIm
IzgyMTc7cyBlbWFpbCBhZGRyZXNzIHdpbGwgYmUgcGxhY2VkIGluIHRoZSAmIzgyMjA7UmVw
bHktVG86JiM4MjIxOyBmaWVsZCBpbnN0ZWFkLiBPcHRpb25hbC48L2xpPgoJCTxsaT48c3Ry
b25nPmZyb21fZm9ybTwvc3Ryb25nPiAmIzgyMTE7IFRoZSBuYW1lIG9mIHlvdXIgZm9ybSB0
ZW1wbGF0ZSBjb250YWluaW5nICYjODIyMDtzZW50IGZyb20mIzgyMjE7IGFkZHJlc3MuIE9w
dGlvbmFsLjwvbGk+CgkJPGxpPjxzdHJvbmc+bGFiZWw8L3N0cm9uZz4gJiM4MjExOyBDYW4g
YmUgdXNlZCB0byBnaXZlIHRoZSBmaWVsZHNldCBhIGxhYmVsIGFuZCBpcyBhbHNvIHVzZWQg
YnkgdGhlIDxjb2RlPiZsdDtsZWdlbmQmZ3Q7PC9jb2RlPiB0YWcuIERlZmF1bHQgaXMgJiM4
MjIwO0NvbnRhY3QmIzgyMjE7LiBTZXR0aW5nIHRoaXMgdG8gPGNvZGU+bGFiZWw9IiI8L2Nv
ZGU+IGlzIG9uZSB3YXkgb2Ygc3RvcHBpbmcgdGhlIDxjb2RlPiZsdDtsZWdlbmQmZ3Q7PC9j
b2RlPiB0YWcgZGlzcGxheWluZyBhbnl0aGluZy4gT3B0aW9uYWwuPC9saT4KCQk8bGk+PHN0
cm9uZz5yZWRpcmVjdDwvc3Ryb25nPiAmIzgyMTE7IFRoaXMgY2FuIGJlIHVzZWQgdG8gcmVw
bGFjZSB0aGFua3MoYSBidWlsdC1pbiBkZWZhdWx0KSBvciB0aGFua3NfZm9ybSAob3B0aW9u
YWwgYXR0cmlidXRlKSBhbmQgd2lsbCBzZW5kIGEgMzAyICgmIzgyMjA7c2VlIGFsc28mIzgy
MjE7KSBoZWFkZXIsIGFzIG9wcG9zZWQgdG8gYSAzMDEgKCYjODIyMDttb3ZlZCBwZXJtYW5l
bnRseSYjODIyMTspLiBUaGUgcmVkaXJlY3QgYXR0cmlidXRlIHVzZXMgeW91ciBUZXh0cGF0
dGVybiBzaXRlIHVybCAobGlrZSB0aGUgdGFnICYjNjA7dHhwOnNpdGUmIzk1O3VybCAvJiM2
MjspIGFzIGl0JiM4MjE3O3MgYmFzZS4gRXhhbXBsZTogcmVkaXJlY3Q9JiM4MjIxO21vbmtl
eSYjODIyMTsgd291bGQgc2VuZCB5b3UgdG8gaHR0cDovL3lvdXItZG9tYWluLmNvbS9tb25r
ZXkuIE9wdGlvbmFsLjwvbGk+CgkJPGxpPjxzdHJvbmc+c2VuZF9hcnRpY2xlPC9zdHJvbmc+
ICYjODIxMTsgVXNpbmcgPGNvZGU+c2VuZF9hcnRpY2xlPSJ5ZXMiPC9jb2RlPiBlbmFibGVz
IGV4dHJhIGZ1bmN0aW9ucyBmb3IgdXNlIHdpdGggPGEgaHJlZj0iI2FydGljbGUiPjxzdHJv
bmc+ICYjNjA7dHhwOnplbSYjOTU7Y29udGFjdCYjOTU7c2VuZCYjOTU7YXJ0aWNsZSYjNjI7
IDwvc3Ryb25nPjwvYT4gKHNlZSBiZWxvdykuIERlZmF1bHQgaXMgJiM4MjIwO25vJiM4MjIx
Oy4gT3B0aW9uYWwuPC9saT4KCQk8bGk+PHN0cm9uZz5zdWJqZWN0PC9zdHJvbmc+ICYjODIx
MTsgQ2FuIGJlIHVzZWQgd2hlbiB5b3UgdXNlIHRoZSBmb3JtIGluIGEgc3BlY2lmaWMgYXJl
YSBvZiBhIHNpdGUgdGhhdCByZWxhdGVzIHRvIGEgc3BlY2lmaWMgc3ViamVjdC4gVGhlIHNp
dGUgbmFtZSBpcyBpbmNsdWRlZCBieSBkZWZhdWx0LiBPcHRpb25hbC48L2xpPgoJCTxsaT48
c3Ryb25nPnRoYW5rc19mb3JtPC9zdHJvbmc+ICYjODIxMTsgVGhlIG5hbWUgb2YgeW91ciBm
b3JtIHRlbXBsYXRlIGNvbnRhaW5pbmcgYSB0aGFuayB5b3UgbWVzc2FnZS4gT3B0aW9uYWwu
PC9saT4KCQk8bGk+PHN0cm9uZz50bzwvc3Ryb25nPiAmIzgyMTE7IGRlc3RpbmF0aW9uIGFk
ZHJlc3MuIDxzdHJvbmc+UmVxdWlyZWQ8L3N0cm9uZz4uPC9saT4KCQk8bGk+PHN0cm9uZz50
b19mb3JtPC9zdHJvbmc+ICYjODIxMTsgVGhlIG5hbWUgb2YgeW91ciBmb3JtIHRlbXBsYXRl
LCBpZiB5b3UgdXNlIG9uZSwgY29udGFpbmluZyB0aGUgJiM4MjIwO3RvJiM4MjIxOyBlbWFp
bCBhZGRyZXNzLiBPcHRpb25hbC48L2xpPgoJCTxsaT48c3Ryb25nPnNob3dfaW5wdXQ8L3N0
cm9uZz4gJiM4MjExOyBVc2UgPGNvZGU+c2hvd19pbnB1dD0ibm8iPC9jb2RlPiB0byBkaXNh
YmxlIGRpc3BsYXkgb2YgdGhlIGlucHV0IGZvcm0uIE9wdGlvbmFsLjwvbGk+CgkJPGxpPjxz
dHJvbmc+c2hvd19lcnJvcjwvc3Ryb25nPiAmIzgyMTE7IFVzZSA8Y29kZT5zaG93X2Vycm9y
PSJubyI8L2NvZGU+IHRvIGRpc2FibGUgZGlzcGxheSBvZiBlcnJvciBhbmQgc3RhdHVzIG1l
c3NhZ2VzLiBPcHRpb25hbC48L2xpPgoJPC91bD4KPGNvZGU+c2hvd19pbnB1dDwvY29kZT4g
YW5kIDxjb2RlPnNob3dfZXJyb3I8L2NvZGU+IGNhbiBiZSB1c2VkIHRvIGRpc3BsYXkgdGhl
IGZvcm0gYW5kIGVycm9yL3RoYW5rIHlvdSBtZXNzYWdlcyBvbiBkaWZmZXJlbnQgcGFydHMg
b2YgYSBwYWdlLiBGb3IgZXhhbXBsZToKCTxwPiYjNjA7ZGl2IGlkJiM2MTsmIzM0O2Vycm9y
JiMzNDsmIzYyOyYjNjA7dHhwOnplbSYjOTU7Y29udGFjdCBmb3JtJiM2MTsmIzM0O2NvbnRh
Y3QmIzk1O2Zvcm0mIzM0OyBzaG93JiM5NTtpbnB1dCYjNjE7JiMzNDtubyYjMzQ7IC8mIzYy
OyYjNjA7L2RpdiYjNjI7PGJyIC8+CiYjNjA7ZGl2IGlkJiM2MTsmIzM0O2lucHV0Zm9ybSYj
MzQ7JiM2MjsmIzYwO3R4cDp6ZW0mIzk1O2NvbnRhY3QgZm9ybSYjNjE7JiMzNDtjb250YWN0
JiM5NTtmb3JtJiMzNDsgc2hvdyYjOTU7ZXJyb3ImIzYxOyYjMzQ7bm8mIzM0OyAvJiM2Mjsm
IzYwOy9kaXYmIzYyOzwvcD4KIDxociAvPgoJPHAgc3R5bGU9InRleHQtYWxpZ246Y2VudGVy
OyI+PHN0cm9uZz5UaGUgcmVtYWluaW5nIHRhZ3MgbWF5IG9ubHkgYmUgdXNlZCB3aXRoaW4g
YSAmIzYwO3R4cDp6ZW0mIzk1O2NvbnRhY3QmIzYyOyBmb3JtIG9yIGNvbnRhaW5lcjwvc3Ry
b25nPjwvcD4KIDxociAvPgoJPHA+PHN0cm9uZz4gJiM2MDt0eHA6emVtJiM5NTtjb250YWN0
JiM5NTt0ZXh0IC8mIzYyOyA8L3N0cm9uZz48L3A+Cgk8cD5DcmVhdGVzIGEgdGV4dCBpbnB1
dCBmaWVsZCBhbmQgY29ycmVzcG9uZGluZyA8Y29kZT4mbHQ7bGFiZWwmZ3Q7PC9jb2RlPiB0
YWcuIFRoZSBpbnB1dCB2YWx1ZSB3aWxsIGJlIGluY2x1ZGVkIGluIHRoZSBlbWFpbCwgcHJl
Y2VkZWQgYnkgdGhlIGxhYmVsLjwvcD4KCTxwPkF0dHJpYnV0ZXM6LTwvcD4KCTx1bD4KCQk8
bGk+PHN0cm9uZz5icmVhazwvc3Ryb25nPiAmIzgyMTE7IEJyZWFrIHRhZyBiZXR3ZWVuIHRo
ZSBsYWJlbCBhbmQgZmllbGQuIERlZmF1bHQgaXMgPGNvZGU+Jmx0O2JyIC8mZ3Q7PC9jb2Rl
Pi4gVXNlIDxjb2RlPmJyZWFrPSIiPC9jb2RlPiB0byBwdXQgdGhlIGxhYmVsIGFuZCBpbnB1
dCBmaWVsZCBvbiB0aGUgc2FtZSBsaW5lLiBPcHRpb25hbC48L2xpPgoJCTxsaT48c3Ryb25n
PmRlZmF1bHQ8L3N0cm9uZz4gJiM4MjExOyBEZWZhdWx0IHZhbHVlIHdoZW4gbm8gaW5wdXQg
aXMgcHJvdmlkZWQuIE9wdGlvbmFsLjwvbGk+CgkJPGxpPjxzdHJvbmc+bGFiZWw8L3N0cm9u
Zz4gJiM4MjExOyBUZXh0IGxhYmVsIGRpc3BsYXllZCB0byB0aGUgdXNlci4gRGVmYXVsdCBp
cyAmIzgyMjA7dGV4dCYjODIyMTsuIE9wdGlvbmFsLjwvbGk+CgkJPGxpPjxzdHJvbmc+bWlu
PC9zdHJvbmc+ICYjODIxMTsgTWluaW11bSBpbnB1dCBsZW5ndGggaW4gY2hhcmFjdGVycy4g
QW4gZXJyb3IgbWVzc2FnZSB3aWxsIGJlIGRpc3BsYXllZCBpZiB0aGUgaW5wdXQgaXMgbGVz
cyB0aGFuIG1pbi4gRGVmYXVsdCBpcyAwLiBPcHRpb25hbC48L2xpPgoJCTxsaT48c3Ryb25n
Pm1heDwvc3Ryb25nPiAmIzgyMTE7IE1heGltdW0gaW5wdXQgbGVuZ3RoIGluIGNoYXJhY3Rl
cnMuIFVzZWQgZm9yIHRoZSBtYXhsZW5ndGggcGFyYW1ldGVyIG9mIHRoZSBpbnB1dCBmaWVs
ZC4gTm8gZXJyb3Igd2lsbCBiZSBkaXNwbGF5ZWQgaWYgdGhlIGxlbmd0aCBpcyBleGNlZWRl
ZCwgYnV0IHRoZSB2YWx1ZSB3aWxsIGJlIHRydW5jYXRlZCBmb3IgdGhlIGVtYWlsLiBEZWZh
dWx0IGlzIDEwMC4gT3B0aW9uYWwuPC9saT4KCQk8bGk+PHN0cm9uZz5uYW1lPC9zdHJvbmc+
ICYjODIxMTsgRmllbGQgbmFtZSwgYXMgdXNlZCBpbiB0aGUgSFRNTCBpbnB1dCB0YWcuIERl
ZmF1bHRzIHRvIHRoZSBsYWJlbC4gT3B0aW9uYWwuPC9saT4KCQk8bGk+PHN0cm9uZz5zaXpl
PC9zdHJvbmc+ICYjODIxMTsgU2l6ZSBvZiB0aGUgaW5wdXQgZmllbGQgYXMgZGlzcGxheWVk
IHRvIHRoZSB1c2VyLiBMZWF2ZSBlbXB0eSBmb3IgdGhlIGJyb3dzZXIgZGVmYXVsdC4gT3B0
aW9uYWwuPC9saT4KCQk8bGk+PHN0cm9uZz5yZXF1aXJlZDwvc3Ryb25nPiAmIzgyMTE7IDxj
b2RlPnJlcXVpcmVkPSJ5ZXMiPC9jb2RlPiBtYWtlcyB0aGUgZmllbGQgbWFuZGF0b3J5LiBU
aGUgZm9ybSB3aWxsIGRpc3BsYXkgYW4gZXJyb3IgbWVzc2FnZSBpZiBubyBpbnB1dCBpcyBw
cm92aWRlZC4gRGVmYXVsdCBpcyAmIzgyMjA7eWVzJiM4MjIxOy4gT3B0aW9uYWwuPC9saT4K
CTwvdWw+CiA8aHIgLz4KIDxwIGlkPSJlbWFpbCI+PHN0cm9uZz4gJiM2MDt0eHA6emVtJiM5
NTtjb250YWN0JiM5NTtlbWFpbCAvJiM2MjsgPC9zdHJvbmc+PC9wPgoJPHA+SW5wdXQgZmll
bGQgZm9yIHVzZXImIzgyMTc7cyBlbWFpbCBhZGRyZXNzLiBUaGUgaW5wdXQgdmFsdWUgd2ls
bCBhdXRvbWF0aWNhbGx5IGJlIHZhbGlkYXRlZCB0byBtYWtlIHN1cmUgaXQgaXMgb2YgdGhl
IGZvcm0gJiM4MjIwO2FiY0B4eHgueXl5Wy56enpdJiM4MjIxOy4gSWYgdGhlIFVuaXgtb25s
eSBnZXRteHJyKCkgZnVuY3Rpb24gaXMgYXZhaWxhYmxlLCB0aGUgZm9ybSB3aWxsIHZlcmlm
eSB0aGF0IGFuIEEgb3IgTVggcmVjb3JkIGV4aXN0cyBmb3IgdGhlIGRvbWFpbi48L3A+Cgk8
cD5BdHRyaWJ1dGVzIGFyZSB0aGUgc2FtZSBhcyBmb3IgJiM2MDt0eHA6emVtJiM5NTtjb250
YWN0JiM5NTt0ZXh0IC8mIzYyOywgZXhjZXB0IHRoYXQgdGhlIGRlZmF1bHQgbGFiZWwgaXMg
JiM4MjIwO0VtYWlsJiM4MjIxOy48L3A+CiA8aHIgLz4KCTxwPjxzdHJvbmc+ICYjNjA7dHhw
OnplbSYjOTU7Y29udGFjdCYjOTU7c2VsZWN0IC8mIzYyOyA8L3N0cm9uZz48L3A+Cgk8cD5D
cmVhdGVzIGEgZHJvcC1kb3duIHNlbGVjdGlvbiBsaXN0LjwvcD4KCTxwPkF0dHJpYnV0ZXMg
YXJlIHNpbWlsYXIgdG8gJiM2MDt0eHA6emVtJiM5NTtjb250YWN0JiM5NTt0ZXh0IC8mIzYy
Oywgd2l0aCB0aGUgZm9sbG93aW5nIGFkZGl0aW9uczotPC9wPgoJPHVsPgoJCTxsaT48c3Ry
b25nPmxpc3Q8L3N0cm9uZz4gJiM4MjExOyBBIGNvbW1hIHNlcGFyYXRlZCBsaXN0IG9mIGl0
ZW1zIHRvIHNob3cgaW4gdGhlIGRyb3AtZG93biBib3g7IGUuZy4gJiM4MjIwO1NhbGVzLFN1
cHBvcnQsQWNjb3VudHMmIzgyMjE7LjwvbGk+CgkJPGxpPjxzdHJvbmc+ZGVsaW1pdGVyPC9z
dHJvbmc+ICYjODIxMTsgVGhlIHNlcGFyYXRvciB1c2VkIGluIHBhcnNpbmcgdGhlIGxpc3Qg
YXR0cmlidXRlLiBEZWZhdWx0IGlzICYjODIyMTssJiM4MjIxOzwvbGk+CgkJPGxpPjxzdHJv
bmc+c2VsZWN0ZWQ8L3N0cm9uZz4gJiM4MjExOyBUaGUgbGlzdCBpdGVtIHRoYXQgaXMgc2Vs
ZWN0ZWQgYnkgZGVmYXVsdDsgZS5nLiAmIzgyMjA7U3VwcG9ydCYjODIyMTsuIERlZmF1bHQg
aXMgJiM4MjIwO3llcyYjODIyMTsuPC9saT4KCTwvdWw+Cgk8cD5taW4gYW5kIG1heCBoYXZl
IG5vIGVmZmVjdC4gSWYgPGNvZGU+cmVxdWlyZWQ9InllcyI8L2NvZGU+IChkZWZhdWx0KSwg
YW4gZW1wdHkgaXRlbSB3aWxsIG5vdCBiZSBhY2NlcHRlZC4gVXNlICYjNjA7dHhwOnplbSYj
OTU7Y29udGFjdCYjOTU7c2VsZWN0IGxpc3QmIzYxOyYjMzQ7LFNhbGVzLFN1cHBvcnQmIzM0
OyAvJiM2MjsgdG8gbWFrZSB0aGUgZmlyc3QgaXRlbSBibGFuaywgZm9yY2luZyB0aGUgdXNl
ciB0byBtYWtlIGEgc2VsZWN0aW9uLjwvcD4KIDxociAvPgoJPHA+PHN0cm9uZz4gJiM2MDt0
eHA6emVtJiM5NTtjb250YWN0JiM5NTtjaGVja2JveCAvJiM2MjsgPC9zdHJvbmc+PC9wPgoJ
PHA+Q3JlYXRlcyBhIGNoZWNrIGJveC48L3A+Cgk8cD5BdHRyaWJ1dGVzIGFyZSBzaW1pbGFy
IHRvICYjNjA7dHhwOnplbSYjOTU7Y29udGFjdCYjOTU7dGV4dCAvJiM2MjssIGV4Y2VwdCB0
aGF0IG1pbiBhbmQgbWF4IGhhdmUgbm8gZWZmZWN0LiBBZGRpdGlvbmFsIGF0dHJpYnV0ZXM6
LTwvcD4KCTx1bD4KCQk8bGk+PHN0cm9uZz5jaGVja2VkPC9zdHJvbmc+ICYjODIxMTsgVXNl
IDxjb2RlPmNoZWNrZWQ9InllcyI8L2NvZGU+IHRvIG1ha2UgdGhlIGJveCBjaGVja2VkIHdo
ZW4gdGhlIGZvcm0gaXMgZmlyc3QgZGlzcGxheWVkLiBEZWZhdWx0IGlzICYjODIyMDtubyYj
ODIyMTsuIE9wdGlvbmFsLjwvbGk+Cgk8L3VsPgoJPHA+SWYgPGNvZGU+cmVxdWlyZWQ9Inll
cyI8L2NvZGU+IChkZWZhdWx0KSwgdGhlIGZvcm0gd29uJiM4MjE3O3QgYmUgYWNjZXB0ZWQg
dW5sZXNzIHRoZSBib3ggaXMgY2hlY2tlZC4gVXNlICYjNjA7dHhwOnplbSYjOTU7Y29udGFj
dCYjOTU7Y2hlY2tib3ggbGFiZWwmIzYxOyYjMzQ7SSBhY2NlcHQgdGhlIHRlcm1zIGFuZCBj
b25kaXRpb25zJiMzNDsgLyYjNjI7IHRvIG1ha2UgYSBjcnVkZSBzaHJpbmstd3JhcCBhZ3Jl
ZW1lbnQgd2hpY2ggbXVzdCBiZSBjaGVja2VkIGJ5IHRoZSB1c2VyIGJlZm9yZSB0aGUgZW1h
aWwgd2lsbCBiZSBzZW50LjwvcD4KIDxociAvPgoJPHA+PHN0cm9uZz4gJiM2MDt0eHA6emVt
JiM5NTtjb250YWN0JiM5NTt0ZXh0YXJlYSAvJiM2MjsgPC9zdHJvbmc+PC9wPgoJPHA+VGV4
dGFyZWEgaW5wdXQgZmllbGQuPC9wPgoJPHA+U3VwcG9ydHMgdGhlIHNhbWUgYXR0cmlidXRl
cyBhcyAmIzYwO3R4cDp6ZW0mIzk1O2NvbnRlbnQmIzk1O3RleHQgLyYjNjI7LCB3aXRoIHRo
ZSBleGNlcHRpb24gb2Ygc2l6ZS4gVGhlIGRlZmF1bHQgbGFiZWwgaXMgJiM4MjIwO01lc3Nh
Z2UmIzgyMjE7IGFuZCB0aGUgZGVmYXVsdCBtYXggaXMgMTAwMDAuIEFkZGl0aW9uYWwgYXR0
cmlidXRlczotPC9wPgoJPHVsPgoJCTxsaT48c3Ryb25nPmNvbHM8L3N0cm9uZz4gJiM4MjEx
OyBjb2x1bW4gd2lkdGguIERlZmF1bHQgaXMgNTAuIE9wdGlvbmFsLjwvbGk+CgkJPGxpPjxz
dHJvbmc+cm93czwvc3Ryb25nPiAmIzgyMTE7IHJvdyBoZWlnaHQuIERlZmF1bHQgaXMgNi4g
T3B0aW9uYWwuPC9saT4KCTwvdWw+CiA8aHIgLz4KCTxwPjxzdHJvbmc+ICYjNjA7dHhwOnpl
bSYjOTU7Y29udGFjdCYjOTU7c3VibWl0IC8mIzYyOyA8L3N0cm9uZz48L3A+Cgk8cD5TdWJt
aXQgYnV0dG9uLjwvcD4KCTxwPkF0dHJpYnV0ZXM6LTwvcD4KCTx1bD4KCQk8bGk+PHN0cm9u
Zz5sYWJlbDwvc3Ryb25nPiAmIzgyMTE7IEJ1dHRvbiB0ZXh0LiBEZWZhdWx0IGlzICYjODIy
MDtTZW5kJiM4MjIxOy4gT3B0aW9uYWwuPC9saT4KCTwvdWw+CiA8aHIgLz4KCTxwPjxzdHJv
bmc+ICYjNjA7dHhwOnplbSYjOTU7Y29udGFjdCYjOTU7c2VydmVyaW5mbyAvJiM2MjsgPC9z
dHJvbmc+PC9wPgoJPHA+VGhpcyB0YWcgaGFzIG5vIGVmZmVjdCBvbiB0aGUgZm9ybSBvciBI
VE1MIG91dHB1dCwgYnV0IHdpbGwgaW5jbHVkZSBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIGlu
IHRoZSBlbWFpbCBiYXNlZCBvbiB0aGUgUEhQICRfU0VSVkVSIHZhcmlhYmxlLiBGb3IgZXhh
bXBsZSwgJiM2MDt0eHA6emVtJiM5NTtjb250YWN0JiM5NTtzZXJ2ZXJpbmZvIG5hbWUmIzYx
OyYjMzQ7UkVNT1RFJiM5NTtBRERSJiMzNDsgbGFiZWwmIzYxOyYjMzQ7SVAmIzM0OyAvJiM2
Mjsgd2lsbCByZXBvcnQgdGhlIHVzZXImIzgyMTc7cyBJUCBhZGRyZXNzLjwvcD4KCTxwPkF0
dHJpYnV0ZXM6LTwvcD4KCTx1bD4KCQk8bGk+PHN0cm9uZz5uYW1lPC9zdHJvbmc+ICYjODIx
MTsgbmFtZSBvZiB0aGUgc2VydmVyIHZhcmlhYmxlLCBlLmcuIFJFUVVFU1RfVVJJLCBIVFRQ
X1VTRVJfQUdFTlQuIFNlZSB0aGUgUEhQIG1hbnVhbCBmb3IgYSBmdWxsIGxpc3QuIDxzdHJv
bmc+UmVxdWlyZWQ8L3N0cm9uZz4uPC9saT4KCQk8bGk+PHN0cm9uZz5sYWJlbDwvc3Ryb25n
PiAmIzgyMTE7IGlmIHN1cHBsaWVkLCB0aGlzIHdpbGwgYmUgdXNlZCB0byBpZGVudGlmeSB0
aGUgZmllbGQgaW4gdGhlIGVtYWlsLiBPcHRpb25hbC48L2xpPgoJPC91bD4KIDxociAvPgo8
ZGl2IGlkPSJhcnRpY2xlIiBzdHlsZT0idGV4dC1hbGlnbjpjZW50ZXI7Zm9udC13ZWlnaHQ6
Ym9sZDtmb250LXNpemU6MjRweDt0ZXh0LWRlY29yYXRpb246dW5kZXJsaW5lOyI+WmVtIENv
bnRhY3QgU2VuZCBBcnRpY2xlPC9kaXY+Cgk8cD5EZXZlbG9wZWQgYnkgdHJhbnF1aWxsbywg
dGhpcyBhbGxvd3MgeW91IHRvIGFkZCBhICYjODIyMDtTZW5kIEFydGljbGUmIzgyMjE7IGxp
bmsgdG8gYW4gaW5kaXZpZHVhbCBhcnRpY2xlIGZvcm0gd2hpY2gsIHdoZW4gY2xpY2tlZCBi
eSBhIHZpc2l0b3IsIHdpbGwgZGlzcGxheSBhIGZvcm0gZm9yIHRoZW0gdG8gZW50ZXIgdGhl
aXIgbmFtZSwgdGhlaXIgZnJpZW5kJiM4MjE3O3MgZW1haWwgYWRkcmVzcyBhbmQgYW4gb3B0
aW9uYWwgcGVyc29uYWwgbWVzc2FnZS4gV2hlbiB0aGUgZm9ybSBpcyBzdWJtaXR0ZWQgdGhl
IGFydGljbGUgdGl0bGUsIGV4Y2VycHQgYW5kIGJvZHkgYXJlIGluY2x1ZGVkIGluIHRoZSBl
bWFpbC48L3A+Cgk8cD48c3Ryb25nPiAmIzYwO3R4cDp6ZW0mIzk1O2NvbnRhY3Qgc2VuZCYj
OTU7YXJ0aWNsZSYjNjE7JiMzNDt5ZXMmIzM0OyAvJiM2MjsgPC9zdHJvbmc+PC9wPgoJPHA+
VXNlIHRoaXMgdGFnIGluIHlvdXIgaW5kaXZpZHVhbCBhcnRpY2xlIGZvcm0sIHdoZXJlIHlv
dSB3YW50IHRoZSBjb250YWN0IGZvcm0gdG8gYmUgZGlzcGxheWVkLiBFbnN1cmUgdGhhdCB5
b3UgaW5jbHVkZSB0aGUgYXR0cmlidXRlIDxjb2RlPnNlbmRfYXJ0aWNsZT0ieWVzIjwvY29k
ZT4uIEl0IG9wZXJhdGVzIGFzIGEgcGxhY2UtaG9sZGVyLiBUaGUgZm9ybSB3aWxsIG5vdCBh
Y3R1YWxseSBhcHBlYXIgb24tc2NyZWVuIHVudGlsIHRoZSBsaW5rIGNvbnRhaW5lZCBpbiBu
ZXh0IHRhZyBoYXMgYmVlbiBhY3RpdmF0ZWQuIFdoZW4gdGhlIG1lc3NhZ2UgaGFzIGJlZW4g
c2VudCB0aGUgZm9ybSB3aWxsIGJlIHJlcGxhY2VkIHdpdGggdGhlICYjODIyMDt0aGFuayB5
b3UmIzgyMjE7IG1lc3NhZ2Ugb3IgZm9ybS48L3A+Cgk8cD5BdHRyaWJ1dGVzIGFyZSBpZGVu
dGljYWwgdG8gPGEgaHJlZj0iI2NvbnRhY3QiPjxzdHJvbmc+ICYjNjA7dHhwOnplbSYjOTU7
Y29udGFjdCAvJiM2MjsgPC9zdHJvbmc+PC9hPiBob3dldmVyICYjODIyMDtzdWJqZWN0JiM4
MjIxOyB3aWxsIHVzZSB0aGUgYXJ0aWNsZSYjODIxNztzIHRpdGxlIGZvciBpdCYjODIxNztz
IGNvbnRlbnRzIGFuZCB0aGVyZSBpcyBubyBuZWVkIHRvIHVzZSB0aGUgJiM4MjIwO3RvJiM4
MjIxOyBhdHRyaWJ1dGUgd2hlbiB1c2luZyB0aGUgdGFnIHRoaXMgd2F5IChzZWUgdGhlICYj
NjA7dHhwOnplbSYjOTU7Y29udGFjdCYjOTU7ZW1haWwgbmFtZSYjNjE7JiMzNDtyZWNlaXZl
ciYjMzQ7IC8mIzYyOyB0YWcgYmVsb3cpLjwvcD4KIDxociAvPgoJPHA+PHN0cm9uZz4gJiM2
MDt0eHA6emVtJiM5NTtjb250YWN0JiM5NTtzZW5kJiM5NTthcnRpY2xlIC8mIzYyOyA8L3N0
cm9uZz48L3A+Cgk8cD5Vc2UgdGhpcyB0YWcgaW4geW91ciBpbmRpdmlkdWFsIGFydGljbGUg
Zm9ybSwgd2hlcmUgeW91IHdhbnQgdGhlICYjODIyMDtzZW5kIGFydGljbGUmIzgyMjE7IGxp
bmsgdG8gYmUgZGlzcGxheWVkLjwvcD4KCTxwPkF0dHJpYnV0ZXM6LTwvcD4KCTx1bD4KCQk8
bGk+PHN0cm9uZz5saW5rdGV4dDwvc3Ryb25nPiAmIzgyMTE7IFRoZSB0ZXh0IGRpc3BsYXll
ZCBmb3IgdGhlIGxpbmsuIERlZmF1bHQgaXMgJiM4MjIwO3NlbmQgYXJ0aWNsZSYjODIyMTsu
IE9wdGlvbmFsLjwvbGk+Cgk8L3VsPgogPGhyIC8+Cgk8cD48c3Ryb25nPiAmIzYwO3R4cDp6
ZW0mIzk1O2NvbnRhY3QmIzk1O2VtYWlsIG5hbWUmIzYxOyYjMzQ7cmVjZWl2ZXImIzM0OyAv
JiM2MjsgPC9zdHJvbmc+PC9wPgoJPHA+VXNlIHRoaXMgdGFnIGluIHlvdXIgY29udGFjdCBm
b3JtIHRlbXBsYXRlIHRvIGRpc3BsYXkgYW4gaW5wdXQgYm94IGZvciB0aGUgcmVjZWl2ZXIm
IzgyMTc7cyBlbWFpbCBhZGRyZXNzIHRvIGJlIGVudGVyZWQuIFlvdSBtdXN0IGVuc3VyZSB0
aGF0IHlvdSBpbmNsdWRlIHRoZSBhdHRyaWJ1dGUgPGNvZGU+bmFtZT0icmVjZWl2ZXIiPC9j
b2RlPiBzbyB0aGF0IHRoZSBwbHVnLWluIHJlY29nbmlzZXMgdGhpcyBhcyB0aGUgJiM4MjIw
O3RvJiM4MjIxOyBhZGRyZXNzLiBGb3IgdGhpcyByZWFzb24gaXQgaXMgYWR2aXNhYmxlIHRo
YXQgeW91IGNyZWF0ZSBhbmQgdXNlIGEgc2VwYXJhdGUgZm9ybSB0ZW1wbGF0ZSBmb3IgdGhl
c2UgJiM4MjIwO3NlbmRfYXJ0aWNsZSYjODIyMTsgZnVuY3Rpb25zLjwvcD4KCTxwPkF0dHJp
YnV0ZXMgYXJlIHRoZSBzYW1lIGFzIGZvciA8YSBocmVmPSIjZW1haWwiPjxzdHJvbmc+ICYj
NjA7dHhwOnplbSYjOTU7Y29udGFjdCYjOTU7ZW1haWwgLyYjNjI7IDwvc3Ryb25nPjwvYT4u
PC9wPgogPGhyIC8+CjxkaXYgaWQ9InN0eWxpbmciIHN0eWxlPSJ0ZXh0LWFsaWduOmNlbnRl
cjtmb250LXdlaWdodDpib2xkO2ZvbnQtc2l6ZToyNHB4O3RleHQtZGVjb3JhdGlvbjp1bmRl
cmxpbmU7Ij5TdHlsaW5nPC9kaXY+Cgk8cD5XaGVuIGVycm9yIG1lc3NhZ2VzIHJlbGF0aW5n
IHRvIGluZm9ybWF0aW9uIGVudGVyZWQsIG9yIG5vdCBlbnRlcmVkLCBpbnRvIHRoZSBmb3Jt
IGFyZSBvdXRwdXQgdGhleSBhcmUgY29udGFpbmVkIHdpdGhpbiBhICYjODIyMDt1bCYjODIy
MTsuIFRoYXQgJiM4MjIwO3VsJiM4MjIxOyBoYXMgYmVlbiBhbGxvY2F0ZWQgPGNvZGU+Y2xh
c3M9InplbUVycm9yIjwvY29kZT4uPC9wPgoJPHA+QWxsIGxhYmVscywgaW5wdXRzIGFuZCB0
aGUgdGV4dGFyZWEgaGF2ZSB0aGVpciBvd24gaW5kaXZpZHVhbCAmIzgyMjA7aWQmIzgyMjE7
IGFuZCAmIzgyMjA7Y2xhc3MmIzgyMjE7IHdoaWNoIGFyZSBlcXVhbCB0byB0aGUgdmFsdWUg
b2YgPGNvZGU+JG5hbWU8L2NvZGU+LiBUaGlzIG1heSBiZSBhIGRlZmF1bHQgdmFsdWUgb3Ig
b25lIHRoYXQgeW91IGhhdmUgZW50ZXJlZCB5b3Vyc2VsZiB1c2luZyB0aGUgPGNvZGU+bmFt
ZT0id2hhdGV2ZXIiPC9jb2RlPiBhdHRyaWJ1dGUuPC9wPgoJPHA+V2hlbiA8Y29kZT5yZXF1
aXJlZD0ieWVzIjwvY29kZT4sIHRoZSByZWxldmFudCBsYWJlbHMgYW5kIGlucHV0cywgb3Ig
bGFiZWwgYW5kIHRoZSB0ZXh0YXJlYSBhcmUgZ2l2ZW4gYSBzZWNvbmQgY2xhc3Mgb2YgJiM4
MjIwO3plbVJlcXVpcmVkJiM4MjIxOyBhbG9uZ3NpZGUgdGhlaXIgaW5kaXZpZHVhbCBjbGFz
c2VzIGluIHRoZSBmb3JtYXQgPGNvZGU+Y2xhc3M9InplbVJlcXVpcmVkICRuYW1lIjwvY29k
ZT4uIEJvdGggY2xhc3NlcyBjYW4gYmUgdXNlZCBpbmRpdmlkdWFsbHkgc28gdGhhdCB5b3Ug
Y2FuIHNldHVwIGEgZ2xvYmFsICYjODIyMDtyZXF1aXJlZCYjODIyMTsgc3R5bGUgYXMgd2Vs
bCBhcyBpbmRpdmlkdWFsIHN0eWxpbmcuPC9wPgoJPHA+V2hlbiBhbiBlcnJvciByZWxhdGlu
ZyB0byBhbiBpbnB1dCBvciB0aGUgdGV4dGFyZWEgaXMgb3V0cHV0LCB0aGUgcmVsYXhhbnQg
bGFiZWwgYW5kIGlucHV0LCBvciBsYWJlbCBhbmQgdGhlIHRleHRhcmVhLCBoYXZlIHRoZSBj
bGFzcyAmIzgyMjA7ZXJyb3JFbGVtZW50JiM4MjIxOyBhcHBlbmRlZCB0byAmIzgyMjA7emVt
UmVxdWlyZWQmIzgyMjE7IGluIHRoZSBmb3JtYXQgPGNvZGU+Y2xhc3M9InplbVJlcXVpcmVk
ZXJyb3JFbGVtZW50ICRuYW1lIjwvY29kZT4uIEFnYWluLCBib3RoIGNsYXNzZXMgY2FuIGJl
IHVzZWQgaW5kaXZpZHVhbGx5IHNvIHRoYXQgeW91IGNhbiBzZXR1cCBhIGdsb2JhbCAmIzgy
MjA7ZXJyb3ImIzgyMjE7IHN0eWxlIGFsb25nc2lkZSB5b3VyIGluZGl2aWR1YWwgc3R5bGlu
Zy48L3A+CiA8aHIgLz4KPGRpdiBpZD0iYXBpIiBzdHlsZT0idGV4dC1hbGlnbjpjZW50ZXI7
Zm9udC13ZWlnaHQ6Ym9sZDtmb250LXNpemU6MjRweDt0ZXh0LWRlY29yYXRpb246dW5kZXJs
aW5lOyI+WmVtIENvbnRhY3QgUmVib3JuJiM4MjE3O3MgQVBJPC9kaXY+Cgk8cD5UaGUgcGx1
Z2luIEFQSSBvZiB6ZW0gY29udGFjdCBpcyBzaW1pbGFyIHRvIHRoZSBjb21tZW50cyBBUEkg
b2YgVGV4dHBhdHRlcm4sIHdoaWNoIGlzIGV4cGxhaW5lZCBpbiB0aGUgVGV4dGJvb2s8YnIg
Lz4KPGEgaHJlZj0iaHR0cDovL3RleHRwYXR0ZXJuLm5ldC93aWtpL2luZGV4LnBocD90aXRs
ZT1QbHVnaW5fRGV2ZWxvcG1lbnRfVG9waWNzIj5QbHVnaW4gRGV2ZWxvcG1lbnQgVG9waWNz
PC9hPiBhbmQgPGEgaHJlZj0iaHR0cDovL3RleHRwYXR0ZXJuLm5ldC93aWtpL2luZGV4LnBo
cD90aXRsZT1Db21iYXRfQ29tbWVudF9TcGFtIj5Db21iYXQgQ29tbWVudCBTcGFtPC9hPi48
L3A+Cgk8cD5UaGUgdHdvIGV2ZW50cyBmb3IgemVtX2NvbnRhY3QgYXJlICYjODIxNjs8Y29k
ZT56ZW1jb250YWN0LnN1Ym1pdDwvY29kZT4mIzgyMTc7IGFuZCAmIzgyMTY7PGNvZGU+emVt
Y29udGFjdC5mb3JtPC9jb2RlPiYjODIxNzsuPGJyIC8+CiYjODIxNjs8Y29kZT56ZW1jb250
YWN0LnN1Ym1pdDwvY29kZT4mIzgyMTc7IGlzIGNhbGxlZCBhZnRlciB0aGUgZm9ybSBpcyBz
dWJtaXR0ZWQgYW5kIHRoZSB2YWx1ZXMgYXJlIGNoZWNrZWQgaWYgZW1wdHkgb3IgdmFsaWQg
ZW1haWxhZGRyZXNzZXMsIGJ1dCBiZWZvcmUgdGhlIG1haWwgaXMgc2VudC48YnIgLz4KJiM4
MjE2Ozxjb2RlPnplbWNvbnRhY3QuZm9ybTwvY29kZT4mIzgyMTc7IGxldCYjODIxNztzIHlv
dSBpbnNlcnQgY29udGVudCBpbiB0aGUgY29udGFjdCBmb3JtLjwvcD4KCTxwPkZvciByZWZl
cmVuY2UgaGVyZSBhcmUgdGhlIGNvbW1hbmRzIHRoYXQgd2lsbCBiZSBpbnRlcmVzdGluZyB0
byBwbHVnaW4gZGV2ZWxvcGVyczo8L3A+Cgk8cD4vLyBUaGlzIHdpbGwgY2FsbCB5b3VyIGZ1
bmN0aW9uIGJlZm9yZSB0aGUgZm9ybSBpcyBzdWJtaXR0ZWQ8YnIgLz4KLy8gU28geW91IGNh
biBhbmFseXNlIHRoZSBzdWJtaXR0ZWQgZGF0YTxiciAvPgo8Y29kZT5yZWdpc3Rlcl9jYWxs
YmFjaygnYWJjX215ZnVuY3Rpb24nLCd6ZW1jb250YWN0LnN1Ym1pdCcpOzwvY29kZT48L3A+
Cgk8cD4vLyBUaGlzIHdpbGwgY2FsbCB5b3VyIGZ1bmN0aW9uIGFuZCBhZGQgdGhlIG91dHB1
dCAodXNlIHJldHVybiAkbXlzdHVmZikgdG8gdGhlPGJyIC8+Ci8vIGNvbnRhY3QtZm9ybSwg
cmlnaHQgYWZ0ZXIgJiM4MjMwOy4gVGhpcyBpcyBvcHRpb25hbC48YnIgLz4KPGNvZGU+cmVn
aXN0ZXJfY2FsbGJhY2soJ2FiY19teW90aGVyZnVuY3Rpb24yJywnemVtY29udGFjdC5mb3Jt
Jyk7PC9jb2RlPjwvcD4KCTxwPi8vIFRvIGdldCBob2xkIG9mIHRoZSBmb3JtLXZhcmlhYmxl
cyB5b3UgY2FuIHVzZTxiciAvPgo8Y29kZT5nbG9iYWwgemVtX2NvbnRhY3RfZm9ybTwvY29k
ZT48YnIgLz4KLy8gb3IgdGhlIGNvcnJlc3BvbmRpbmcgJFBPU1Qgb3IgJFJFUVVFU1QuPC9w
PgoJPHA+Ly8gV2l0aCB0aGUgZm9sbG93aW5nIHR3byBsaW5lcyB5b3UgY2FuIHRlbGwgemVt
X2NvbnRhY3QgaWYgeW91cjxiciAvPgovLyBwbHVnaW4gZm91bmQgc3BhbTxiciAvPgo8Y29k
ZT4kZXZhbHVhdG9yID0mIzM4OyBnZXRfemVtY29udGFjdF9ldmFsdWF0b3IoKTs8YnIgLz4K
JGV2YWx1YXRvciAtJmd0OyBhZGRfemVtY29udGFjdF9zdGF0dXMoMSk7IC8vIHRoZSBwYXNz
ZWQgdmFsdWUgbXVzdCBiZSBhbnkgbnVtYmVyIGJ1dCB6ZXJvIHRvIG1hcmsgdGhlIGNvbnRl
bnQgYXMgc3BhbTwvY29kZT4uPC9wPgoJPHA+TXVsdGlwbGUgcGx1Z2lucyBjYW4gYmUgYWN0
aXZlIGF0IHRoZSBzYW1lIHRpbWUgYW5kIGVhY2ggb2YgdGhlbSBjYW4gbWFyayB0aGUgc3Vi
bWl0dGVkIGNvbnRlbnQgYXMgc3BhbSBhbmQgcHJldmVudCB0aGUgZm9ybSBmcm9tIGJlaW5n
IHN1Ym1pdHRlZC48L3A+Cgk8cD48c3Ryb25nPkFuIGV4YW1wbGUgb2YgYSBwbHVnLWluIGNv
bm5lY3RpbmcgdG8gWmVtIENvbnRhY3QgUmVib3JuJiM4MjE3O3MgQVBJOi08L3N0cm9uZz48
L3A+Cjxjb2RlPnJlZ2lzdGVyX2NhbGxiYWNrKCdwYXBfemVtY29udGFjdF9mb3JtJywnemVt
Y29udGFjdC5mb3JtJyk7CnJlZ2lzdGVyX2NhbGxiYWNrKCdwYXBfemVtY29udGFjdF9zdWJt
aXQnLCd6ZW1jb250YWN0LnN1Ym1pdCcpOzwvY29kZT4KPGJyIC8+CjxiciAvPgoKPGNvZGU+
ZnVuY3Rpb24gcGFwX3plbWNvbnRhY3RfZm9ybSgpIHs8L2NvZGU+CjxiciAvPgo8YnIgLz4K
Cjxjb2RlPiRmaWVsZCA9ICcmbHQ7ZGl2IHN0eWxlPSJ2aXNpYmlsaXR5OmhpZGRlbiImZ3Q7
Jy5maW5wdXQoJ3RleHQnLCdwaG9uZScscHMoJ3Bob25lJyksJycsJycsJycsJycsJycsJ3Bo
b25lJykuJyZsdDticiAvJmd0OycuZmlucHV0KCd0ZXh0JywnbWFpbCcscHMoJ21haWwnKSwn
JywnJywnJywnJywnJywnbWFpbCcpLicmbHQ7L2RpdiZndDsnOwpyZXR1cm4gJGZpZWxkOzwv
Y29kZT4KPGJyIC8+CjxiciAvPgoKPGNvZGU+fTwvY29kZT4KPGJyIC8+CjxiciAvPgoKPGNv
ZGU+ZnVuY3Rpb24gcGFwX3plbWNvbnRhY3Rfc3VibWl0KCkgezwvY29kZT4KPGJyIC8+Cjxi
ciAvPgoKPGNvZGU+JGNoZWNraW5nX21haWxfZmllbGQgPSB0cmltKHBzKCdtYWlsJykpOwok
Y2hlY2tpbmdfcGhvbmVfZmllbGQgPSB0cmltKHBzKCdwaG9uZScpKTs8L2NvZGU+CjxiciAv
Pgo8YnIgLz4KCjxjb2RlPiRldmFsdWF0aW9uID0mIzM4OyBnZXRfemVtY29udGFjdF9ldmFs
dWF0b3IoKTs8L2NvZGU+CjxiciAvPgo8YnIgLz4KCjxjb2RlPi8vIElmIHRoZSBoaWRkZW4g
ZmllbGRzIGFyZSBmaWxsZWQgb3V0LCB0aGUgY29udGFjdCBmb3JtIHdvbid0IGJlIHN1Ym1p
dHRlZCE8L2NvZGU+CjxiciAvPgoKPGNvZGU+aWYgKCRjaGVja2luZ19tYWlsX2ZpZWxkICE9
ICcnIHx8ICRjaGVja2luZ19waG9uZV9maWVsZCAhPSAnJyl7CiRldmFsdWF0aW9uIC0mZ3Q7
IGFkZF96ZW1jb250YWN0X3N0YXR1cygxKTs8L2NvZGU+Cn0KcmV0dXJuOzwvY29kZT4KPGJy
IC8+CjxiciAvPgoKPGNvZGU+fTwvY29kZT4KIDxiciAvPgoKIDxwIHN0eWxlPSJmb250LXdl
aWdodDpib2xkO2ZvbnQtc2l6ZToxNnB4O3RleHQtYWxpZ246Y2VudGVyOyI+PGEgaHJlZj0i
IyI+QmFjayB0byB0aGUgVG9wPC9hPjwvcD4KIDxiciAvPgoKCgogIjtzOjQ6ImNvZGUiO3M6
MTQ2ODk6IgpmdW5jdGlvbiB6ZW1fY29udGFjdCgkYXR0cywgJHRoaW5nID0gJycpCnsKCWds

b2JhbCAkc2l0ZW5hbWUsICRwcmVmcywgJHByb2R1Y3Rpb25fc3RhdHVzLCAkemVtX2NvbnRh
Y3RfZm9ybSwgJHplbV9jb250YWN0X2Zyb20sICR6ZW1fY29udGFjdF9ub25jZSwgJHplbV9j
b250YWN0X2Vycm9yOwoKCWV4dHJhY3QobEF0dHMoYXJyYXkoCgkJJ2JjYycJCT0+ICcnLAoJ
CSdjb3B5c2VuZGVyJwk9PiAnbm8nLAoJCSdmb3JtJwkJPT4gJycsCgkJJ2Zyb20nCQk9PiAn
JywKCQknZnJvbV9mb3JtJwk9PiAnJywKCQknaXNFcnJvcicJPT4gJycsCgkJJ2xhYmVsJwkJ
PT4gemVtX2NvbnRhY3RfZ1R4dCgnY29udGFjdCcpLAoJCSdyZWRpcmVjdCcJPT4gJycsCgkJ
J3Nob3dfZXJyb3InCT0+ICd5ZXMnLAoJCSdzaG93X2lucHV0Jwk9PiAneWVzJywKCQknc2Vu
ZF9hcnRpY2xlJwk9PiAnbm8nLAoJCSdzdWJqZWN0Jwk9PiB6ZW1fY29udGFjdF9nVHh0KCdl
bWFpbF9zdWJqZWN0JywgJHNpdGVuYW1lKSwKCQkndG8nCQk9PiAnJywKCQkndG9fZm9ybScJ
PT4gJycsCgkJJ3RoYW5rcycJPT4gZ3JhZih6ZW1fY29udGFjdF9nVHh0KCdlbWFpbF90aGFu
a3MnKSksCgkJJ3RoYW5rc19mb3JtJwk9PiAnJwoJKSwgJGF0dHMpKTsKCglpZiAoIWlzX2Nh
bGxhYmxlKCdtYWlsJykpCgl7CgkJcmV0dXJuICgkcHJvZHVjdGlvbl9zdGF0dXMgPT0gJ2xp
dmUnKSA/CgkJCXplbV9jb250YWN0X2dUeHQoJ21haWxfc29ycnknKSA6CgkJCWdUeHQoJ3dh
cm5fbWFpbF91bmF2YWlsYWJsZScpOwoJfQoKCWlmICgkdG9fZm9ybSkKCXsKCQkkdG9fZm9y
bSA9IGZldGNoX2Zvcm0oJHRvX2Zvcm0pOwoJCSR0byA9IHBhcnNlKCR0b19mb3JtKTsKCX0K
CglpZiAoISR0byBhbmQgJHNlbmRfYXJ0aWNsZSA9PSAnbm8nKQoJewoJCXJldHVybiB6ZW1f
Y29udGFjdF9nVHh0KCd0b19taXNzaW5nJyk7Cgl9CgoJJHplbV9jb250YWN0X25vbmNlID0g
bWQ1KHVuaXFpZChyYW5kKCksIHRydWUpKTsKCglzYWZlX2luc2VydCgndHhwX2Rpc2N1c3Nf
bm9uY2UnLCAiaXNzdWVfdGltZSA9IG5vdygpLCBub25jZSA9ICckemVtX2NvbnRhY3Rfbm9u
Y2UnIik7CgoJJGZvcm0gPSAoJGZvcm0pID8gZmV0Y2hfZm9ybSgkZm9ybSkgOiAkdGhpbmc7
CgoJaWYgKGVtcHR5KCRmb3JtKSkKCXsKCQkkZm9ybSA9IDw8PGZvcm0KPHR4cDp6ZW1fY29u
dGFjdF90ZXh0IGxhYmVsPSJOYW1lIiAvPjxiciAvPgo8dHhwOnplbV9jb250YWN0X2VtYWls
IC8+PGJyIC8+Cjx0eHA6emVtX2NvbnRhY3RfdGV4dGFyZWEgLz48YnIgLz4KPHR4cDp6ZW1f
Y29udGFjdF9zdWJtaXQgLz4KZm9ybTsKCX0KCgkkZm9ybSA9IHBhcnNlKCRmb3JtKTsKCglp
ZiAoJHRoYW5rc19mb3JtKQoJewoJCSR0aGFua3MgPSBmZXRjaF9mb3JtKCR0aGFua3NfZm9y
bSk7Cgl9CgoJJG91dCA9ICcnOwoKCWlmIChpc19hcnJheSgkemVtX2NvbnRhY3RfZXJyb3Ip
IGFuZCBjb3VudCgkemVtX2NvbnRhY3RfZXJyb3IpKQoJewoJCWlmICgkc2hvd19lcnJvciA9
PSAneWVzJykKCQl7CgkJCSRvdXQgLj0gbi4nPHVsIGNsYXNzPSJ6ZW1FcnJvciI+JzsKCgkJ
CWZvcmVhY2ggKCR6ZW1fY29udGFjdF9lcnJvciBhcyAkZXJyb3IpCgkJCXsKCQkJCSRvdXQg
Lj0gbi50Lic8bGk+Jy4kZXJyb3IuJzwvbGk+JzsKCQkJfQoKCQkJJG91dCAuPSBuLic8L3Vs
Pic7CgkJfQoKCQkkc2hvd19pbnB1dCA9ICd5ZXMnOwoJfQoKCWVsc2VpZiAoaXNfYXJyYXko
JHplbV9jb250YWN0X2Zvcm0pIGFuZCBwcygnemVtX2NvbnRhY3Rfc3VibWl0JykpCgl7CgkJ
Ly8vIGxvYWQgYW5kIGNoZWNrIHNwYW0gcGx1Z2lucy8KCQljYWxsYmFja19ldmVudCgnemVt
Y29udGFjdC5zdWJtaXQnKTsKCQkkZXZhbHVhdGlvbiA9JiBnZXRfemVtY29udGFjdF9ldmFs
dWF0b3IoKTsKCQkkY2xlYW4gPSAkZXZhbHVhdGlvbi0+Z2V0X3plbWNvbnRhY3Rfc3RhdHVz
KCk7CgkJaWYgKCRjbGVhbiAhPSAwKSB7CgkJCXJldHVybiB6ZW1fY29udGFjdF9nVHh0KCdz
cGFtJyk7CgkJfQoKCQlpZiAoJGZyb21fZm9ybSkKCQl7CgkJCSRmcm9tID0gcGFyc2UoJGZy
b21fZm9ybSk7CgkJfQoKCQkkc2VwID0gIWlzX3dpbmRvd3MoKSA/ICJcbiIgOiAiXHJcbiI7
CgoJCSRtc2cgPSBhcnJheSgpOwoKCQlmb3JlYWNoICgkemVtX2NvbnRhY3RfZm9ybSBhcyAk
ayA9PiAkdikKCQl7CgkJCSRtc2dbXSA9ICRrLic6ICcuaHRtbHNwZWNpYWxjaGFycygkdik7
CgkJfQoKCWlmICgkc2VuZF9hcnRpY2xlID09ICd5ZXMnKSB7CgkJCWdsb2JhbCAkdGhpc2Fy
dGljbGU7CgkJCSRzdWJqZWN0ID0gJHRoaXNhcnRpY2xlWyd0aXRsZSddOwoJCQkkbXNnW10g
PSAkdGhpc2FydGljbGVbJ3RpdGxlJ10uJyAoJy5wZXJtbGlua3VybCgkdGhpc2FydGljbGUp
LicpJzsgLy8gYWRkZWQgcGVybWxpbmsKCQlpZiAoJHRoaXNhcnRpY2xlWydleGNlcnB0J10p
IHsKCQkJJGV4YyA9IHN0cmlwX3RhZ3MoJHRoaXNhcnRpY2xlWydleGNlcnB0J10pOyAvLyBh
ZGRlZCBzdHJpcHRhZ3MKCQkJJGV4YyA9IHN0cl9yZXBsYWNlKCJcdCIsICcnLCAkZXhjKTsg
Ly8gYWRkZWQgc3RycmVwbGFjZQoJCQkkbXNnW10gPSB0cmltKCRleGMpOyAvLyBhZGRlZCB0
cmltCgkJfQoJCSRiZHkgPSBzdHJpcF90YWdzKCR0aGlzYXJ0aWNsZVsnYm9keSddKTsgLy8g
c2FtZSBmb3IgdGhlc2UgdHdvIGxpbmVzCgkJJG1zZ1tdID0gc3RyX3JlcGxhY2UoIlx0Iiwg
JycsICRiZHkpOwoKCQlpZiAoIXBzKCdyZWNlaXZlcicpKSB7CgkJCXJldHVybiB6ZW1fY29u
dGFjdF9nVHh0KCdmaWVsZF9taXNzaW5nJywgemVtX2NvbnRhY3RfZ1R4dCgncmVjZWl2ZXIn
KSk7CgkJCSRpc0Vycm9yID0gImVycm9yRWxlbWVudCI7CgkJfQoJCWVsc2UKCQl7CgkJCSR0
byA9IHBzKCdyZWNlaXZlcicpOwoJCX0KCX0KCgkJJG1zZyA9IGpvaW4oIlxuXG4iLCAkbXNn
KTsKCQkkbXNnID0gc3RyX3JlcGxhY2UoIlxyXG4iLCAiXG4iLCAkbXNnKTsKCQkkbXNnID0g
c3RyX3JlcGxhY2UoIlxyIiwgIlxuIiwgJG1zZyk7CgkJJG1zZyA9IHN0cl9yZXBsYWNlKCJc
biIsICRzZXAsICRtc2cpOwoKCQlpZiAoJGZyb20pCgkJewoJCQkkZnJvbSAgPSAkZnJvbTsK
CQkJJHJlcGx5ID0gJHplbV9jb250YWN0X2Zyb207CgkJfQoKCQllbHNlCgkJewoJCQkkZnJv
bSA9ICR6ZW1fY29udGFjdF9mcm9tOwoJCQkkcmVwbHkgPSAnJzsKCQl9CgoJCWlmICgkY29w
eXNlbmRlciA9PSAneWVzJykKCQl7CgkJCSRiY2MgPSAkdG87CgkJCSR0byA9ICR6ZW1fY29u
dGFjdF9mcm9tOwoJCX0KCgkJJHRvICAgICAgPSBzdHJpcF9ybigkdG8pOwoJCSRiY2MgICAg
ID0gc3RyaXBfcm4oJGJjYyk7CgkJJHN1YmplY3QgPSBzdHJpcF9ybigkc3ViamVjdCk7CgkJ
JGZyb20gICAgPSBzdHJpcF9ybigkZnJvbSk7CgkJJHJlcGx5ICAgPSBzdHJpcF9ybigkcmVw
bHkpOwoKCQlpZiAoJHByZWZzWydvdmVycmlkZV9lbWFpbGNoYXJzZXQnXSkKCQl7CgkJCSRj
aGFyc2V0ID0gJ0lTTy04NTk5LTEnOwoKCQkJaWYgKGlzX2NhbGxhYmxlKCd1dGY4X2RlY29k
ZScpKQoJCQl7CgkJCQkkdG8gICAgICA9IHV0ZjhfZGVjb2RlKCR0byk7CgkJCQkkYmNjICAg
ICAgPSB1dGY4X2RlY29kZSgkYmNjKTsKCQkJCSRzdWJqZWN0ID0gdXRmOF9kZWNvZGUoJHN1
YmplY3QpOwoJCQkJJG1zZyAgICAgPSB1dGY4X2RlY29kZSgkbXNnKTsKCQkJCSRmcm9tICAg
ID0gdXRmOF9kZWNvZGUoJGZyb20pOwoJCQkJJHJlcGx5ICAgPSB1dGY4X2RlY29kZSgkcmVw
bHkpOwoJCQl9CgkJfQoKCQllbHNlCgkJewoJCQkkY2hhcnNldCA9ICdVVEYtOCc7CgkJfQoK
CQkkaGVhZGVycyA9ICdGcm9tOiAnLiRmcm9tLgoJCQkoJHJlcGx5ID8gKCRzZXAuJ1JlcGx5
LVRvOiAnLiRyZXBseSkgOiAnJykuCgkJCSgkYmNjID8gKCRzZXAuJ0JjYzogJy4kYmNjKSA6
ICcnKS4KCQkJJHNlcC4nWC1NYWlsZXI6IFRleHRwYXR0ZXJuICh6ZW1fY29udGFjdF9yZWJv
cm4pJy4KCQkJJHNlcC4nQ29udGVudC1UcmFuc2Zlci1FbmNvZGluZzogOGJpdCcuCgkJCSRz
ZXAuJ0NvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgY2hhcnNldD0iJy4kY2hhcnNldC4nIic7
CgoJCWlmIChtYWlsKCR0bywgJHN1YmplY3QsICRtc2csICRoZWFkZXJzKSkKCQl7CgkJCWlm
ICgkcmVkaXJlY3QpCgkJCXsKCQkJCWhlYWRlcignSFRUUC8xLjEgMzAzIFNlZSBPdGhlcicp
OwoJCQkJaGVhZGVyKCdTdGF0dXM6IDMwMycpOwoJCQkJaGVhZGVyKCdMb2NhdGlvbjogJy5o
dS4kcmVkaXJlY3QpOwoJCQkJaGVhZGVyKCdDb25uZWN0aW9uOiBjbG9zZScpOwoJCQl9CgoJ
CQllbHNlCgkJCXsKCQkJCSRfUE9TVCA9IGFycmF5KCk7CgoJCQkJaWYgKCRzaG93X2lucHV0
ID09ICd5ZXMnKQoJCQkJewoJCQkJCWlmICgkdGhhbmtzKQoJCQkJCXsKCQkJCQkJcmV0dXJu
ICR0aGFua3M7CgkJCQkJfQoJCQkJfQoJCQl9CgkJfQoKCQllbHNlCgkJewoJCQkkb3V0IC49
IGdyYWYoemVtX2NvbnRhY3RfZ1R4dCgnbWFpbF9zb3JyeScpKTsKCQl9Cgl9CgoJaWYgKCRz
aG93X2lucHV0ID09ICd5ZXMnIGFuZCAkc2VuZF9hcnRpY2xlID09ICdubycgb3IgZ3BzKCd6
ZW1fY29udGFjdF9zZW5kX2FydGljbGUnKSkKCXsKCQlpZiAocHMoJ3plbV9jb250YWN0X3N1
Ym1pdCcpKQoJCXsKCQkJJG5vbmNlID0gcHMoJ3plbV9jb250YWN0X25vbmNlJyk7CgoJCQlp
ZiAoZW1wdHkoJG5vbmNlKSkKCQkJewoJCQkJJHplbV9jb250YWN0X2Vycm9yW10gPSB6ZW1f
Y29udGFjdF9nVHh0KCdmaWVsZF9taXNzaW5nJyk7CgkJCQkkaXNFcnJvciA9ICJlcnJvckVs
ZW1lbnQiOwoJCQl9CgoJCQllbHNlCgkJCXsKCQkJCXNhZmVfZGVsZXRlKCd0eHBfZGlzY3Vz
c19ub25jZScsICdpc3N1ZV90aW1lIDwgZGF0ZV9zdWIobm93KCksIGludGVydmFsIDEwIG1p
bnV0ZSknKTsKCgkJCQkkcnMgPSBzYWZlX3JvdygnKicsICd0eHBfZGlzY3Vzc19ub25jZScs
ICJub25jZSA9ICckbm9uY2UnIGFuZCB1c2VkID0gJzAnIik7CgoJCQkJaWYgKCRycykKCQkJ
CXsKCQkJCQlzYWZlX3VwZGF0ZSgndHhwX2Rpc2N1c3Nfbm9uY2UnLCAidXNlZCA9ICcxJyIs
ICJub25jZSA9ICckbm9uY2UnIik7CgkJCQl9CgoJCQkJZWxzZQoJCQkJewoJCQkJCSR6ZW1f
Y29udGFjdF9lcnJvcltdID0gemVtX2NvbnRhY3RfZ1R4dCgnZm9ybV9leHBpcmVkJyk7CgkJ
CQl9CgkJCX0KCQl9CgoJCXJldHVybiAnPGZvcm0gbWV0aG9kPSJwb3N0IiBpZD0iemVtQ29u
dGFjdEZvcm0iIGFjdGlvbj0iJy5zZXJ2ZXJTZXQoJ1JFUVVFU1RfVVJJJykuJyI+Jy4KCQkJ
KCAkbGFiZWwgPyBuLic8ZmllbGRzZXQ+JyA6IG4uJzxkaXY+JyApLgoJCQkoICRsYWJlbCA/
IG4uJzxsZWdlbmQ+Jy4kbGFiZWwuJzwvbGVnZW5kPicgOiAnJyApLgoJCQkkb3V0LgoJCQlu
Lic8aW5wdXQgdHlwZT0iaGlkZGVuIiBuYW1lPSJ6ZW1fY29udGFjdF9ub25jZSIgdmFsdWU9
IicuJHplbV9jb250YWN0X25vbmNlLiciIC8+Jy4KCQkJJGZvcm0uCgkJCSggJGxhYmVsID8g
KG4uJzwvZmllbGRzZXQ+JykgOiAobi4nPC9kaXY+JykgKS4KCQkJY2FsbGJhY2tfZXZlbnQo
J3plbWNvbnRhY3QuZm9ybScpLiAvLyBub3Qgc3VyZSwgaWYgaXQgc2hvdWxkIGJlIG91dHNp
ZGUgb3IgaW5zaWRlIHRoZSBmaWVsZHNldC4gV2hhdCBkbyB5b3UgdGhpbmssIFN0dT8KCQkJ
bi4nPC9mb3JtPic7Cgl9CgoJcmV0dXJuICcnOwp9CgpmdW5jdGlvbiB6ZW1fY29udGFjdF90
ZXh0KCRhdHRzKQp7CglnbG9iYWwgJHplbV9jb250YWN0X2Zvcm0sICR6ZW1fY29udGFjdF9l
cnJvcjsKCglleHRyYWN0KGxBdHRzKGFycmF5KAoJCSdicmVhaycJCT0+IGJyLAoJCSdkZWZh
dWx0Jwk9PiAnJywKCQknaXNFcnJvcicJPT4gJycsCgkJJ2xhYmVsJwkJPT4gemVtX2NvbnRh
Y3RfZ1R4dCgndGV4dCcpLAoJCSdtYXgnCQk9PiAxMDAsCgkJJ21pbicJCT0+IDAsCgkJJ25h
bWUnCQk9PiAnJywKCQkncmVxdWlyZWQnCT0+ICd5ZXMnLAoJCSdzaXplJwkJPT4gJycKCSks
ICRhdHRzKSk7CgoJaWYgKGVtcHR5KCRuYW1lKSkKCXsKCQkkbmFtZSA9IHN0cnRvbG93ZXIo
cHJlZ19yZXBsYWNlKCcvXFcvJywgJycsICRsYWJlbCkpOwoJfQoKCSR2YWx1ZSA9IHBzKCRu
YW1lKSA/IHBzKCRuYW1lKSA6ICRkZWZhdWx0OwoKCWlmICgkdmFsdWUgYW5kICRtYXgpCgl7
CgkJJHZhbHVlID0gc3Vic3RyKCR2YWx1ZSwgMCwgJG1heCk7Cgl9CgoJaWYgKHBzKCd6ZW1f
Y29udGFjdF9zdWJtaXQnKSBhbmQgJHJlcXVpcmVkID09ICd5ZXMnIGFuZCBlbXB0eSgkdmFs
dWUpKQoJewoJCSR6ZW1fY29udGFjdF9lcnJvcltdID0gemVtX2NvbnRhY3RfZ1R4dCgnZmll
bGRfbWlzc2luZycsICRsYWJlbCk7CgkJJGlzRXJyb3IgPSAiZXJyb3JFbGVtZW50IjsKCX0K
CgllbHNlaWYgKHBzKCRuYW1lKSBhbmQgJG1pbiBhbmQgc3RybGVuKCR2YWx1ZSkgPCAkbWlu
KQoJewoJCSR6ZW1fY29udGFjdF9lcnJvcltdID0gemVtX2NvbnRhY3RfZ1R4dCgnbWluX3dh
cm5pbmcnLCAkbGFiZWwsICRtaW4pOwoJCSRpc0Vycm9yID0gImVycm9yRWxlbWVudCI7Cgl9
CgoJZWxzZWlmIChwcygkbmFtZSkpCgl7CgkJJHplbV9jb250YWN0X2Zvcm1bJGxhYmVsXSA9
ICR2YWx1ZTsKCX0KCgkkc2l6ZSA9ICgkc2l6ZSkgPyAnIHNpemU9IicuKGludCkkc2l6ZS4n
IicgOiAnJzsKCSRtYXhsZW5ndGggPSAoJG1heCkgPyAnIG1heGxlbmd0aD0iJy4oaW50KSRt
YXguJyInIDogJyc7CgogICAgICAgIGlmICgkcmVxdWlyZWQgPT0gJ3llcycpCiAgICAgICAg
ewogICAgICAgIHJldHVybiAnPGxhYmVsIGZvcj0iJy4kbmFtZS4nIiBjbGFzcz0iemVtUmVx
dWlyZWQnLiRpc0Vycm9yLicgJy4kbmFtZS4nIj4nLiRsYWJlbC4nPC9sYWJlbD4nLiRicmVh
ay4KCQknPGlucHV0IHR5cGU9InRleHQiIGlkPSInLiRuYW1lLiciIGNsYXNzPSJ6ZW1SZXF1
aXJlZCcuJGlzRXJyb3IuJyIgbmFtZT0iJy4kbmFtZS4nIiB2YWx1ZT0iJy5odG1sc3BlY2lh
bGNoYXJzKCR2YWx1ZSkuJyInLiRzaXplLiRtYXhsZW5ndGguJyAvPic7CiAgICAgICAgIH0K
ICAgICAgICBlbHNlCiAgICAgICAgewoJcmV0dXJuICc8bGFiZWwgZm9yPSInLiRuYW1lLici
IGNsYXNzPSInLiRuYW1lLiciPicuJGxhYmVsLic8L2xhYmVsPicuJGJyZWFrLgoJCSc8aW5w
dXQgdHlwZT0idGV4dCIgaWQ9IicuJG5hbWUuJyIgbmFtZT0iJy4kbmFtZS4nIiB2YWx1ZT0i
Jy5odG1sc3BlY2lhbGNoYXJzKCR2YWx1ZSkuJyInLiRzaXplLiRtYXhsZW5ndGguJyAvPic7
CiAgICAgICAgfQoKfQoKZnVuY3Rpb24gemVtX2NvbnRhY3RfdGV4dGFyZWEoJGF0dHMpCnsK
CWdsb2JhbCAkemVtX2NvbnRhY3RfZm9ybSwgJHplbV9jb250YWN0X2Vycm9yOwoKCWV4dHJh
Y3QobEF0dHMoYXJyYXkoCgkJJ2JyZWFrJwkJPT4gYnIsCgkJJ2NvbHMnCQk9PiA1OCwKCQkn
ZGVmYXVsdCcJPT4gJycsCgkJJ2lzRXJyb3InCT0+ICcnLAoJCSdsYWJlbCcJCT0+IHplbV9j
b250YWN0X2dUeHQoJ21lc3NhZ2UnKSwKCQknbWF4JwkJPT4gMTAwMDAsCgkJJ21pbicJCT0+
IDAsCgkJJ25hbWUnCQk9PiAnJywKCQkncmVxdWlyZWQnCT0+ICd5ZXMnLAoJCSdyb3dzJwkJ
PT4gOAoJKSwgJGF0dHMpKTsKCglpZiAoZW1wdHkoJG5hbWUpKQoJewoJCSRuYW1lID0gc3Ry
dG9sb3dlcihwcmVnX3JlcGxhY2UoJy9cVy8nLCAnJywgJGxhYmVsKSk7Cgl9CgoJJHZhbHVl
ID0gcHMoJG5hbWUpID8gcHMoJG5hbWUpIDogJGRlZmF1bHQ7CgoJaWYgKCR2YWx1ZSBhbmQg
JG1heCkKCXsKCQkkdmFsdWUgPSBzdWJzdHIoJHZhbHVlLCAwLCAkbWF4KTsKCX0KCglpZiAo
cHMoJ3plbV9jb250YWN0X3N1Ym1pdCcpIGFuZCAkcmVxdWlyZWQgPT0gJ3llcycgYW5kIGVt
cHR5KCR2YWx1ZSkpCgl7CgkJJHplbV9jb250YWN0X2Vycm9yW10gPSB6ZW1fY29udGFjdF9n
VHh0KCdmaWVsZF9taXNzaW5nJywgJGxhYmVsKTsKCQkkaXNFcnJvciA9ICJlcnJvckVsZW1l
bnQiOwoJfQoKCWVsc2VpZiAocHMoJG5hbWUpIGFuZCAkbWluIGFuZCBzdHJsZW4oJHZhbHVl
KSA8ICRtaW4pCgl7CgkJJHplbV9jb250YWN0X2Vycm9yW10gPSB6ZW1fY29udGFjdF9nVHh0
KCdtaW5fd2FybmluZycsICRsYWJlbCwgJG1pbik7CgkJJGlzRXJyb3IgPSAiZXJyb3JFbGVt
ZW50IjsKCX0KCgllbHNlaWYgKHBzKCRuYW1lKSkKCXsKCQkkemVtX2NvbnRhY3RfZm9ybVsk
bGFiZWxdID0gJHZhbHVlOwoJfQoKCWlmICgkcmVxdWlyZWQgPT0gJ3llcycpCgl7CglyZXR1
cm4gJzxsYWJlbCBmb3I9IicuJG5hbWUuJyIgY2xhc3M9InplbVJlcXVpcmVkJy4kaXNFcnJv
ci4nICcuJG5hbWUuJyI+Jy4kbGFiZWwuJzwvbGFiZWw+Jy4kYnJlYWsuCgkJJzx0ZXh0YXJl
YSBpZD0iJy4kbmFtZS4nIiBjbGFzcz0iemVtUmVxdWlyZWQnLiRpc0Vycm9yLiciIG5hbWU9
IicuJG5hbWUuJyIgY29scz0iJy4kY29scy4nIiByb3dzPSInLiRyb3dzLiciPicuaHRtbHNw
ZWNpYWxjaGFycygkdmFsdWUpLic8L3RleHRhcmVhPic7Cgl9CgllbHNlCgl7CglyZXR1cm4g
JzxsYWJlbCBmb3I9IicuJG5hbWUuJyIgY2xhc3M9IicuJG5hbWUuJyI+Jy4kbGFiZWwuJzwv
bGFiZWw+Jy4kYnJlYWsuCgkJJzx0ZXh0YXJlYSBpZD0iJy4kbmFtZS4nIiBuYW1lPSInLiRu
YW1lLiciIGNvbHM9IicuJGNvbHMuJyIgcm93cz0iJy4kcm93cy4nIj4nLmh0bWxzcGVjaWFs
Y2hhcnMoJHZhbHVlKS4nPC90ZXh0YXJlYT4nOwoJfQp9CgpmdW5jdGlvbiB6ZW1fY29udGFj
dF9lbWFpbCgkYXR0cykKewoJZ2xvYmFsICR6ZW1fY29udGFjdF9mb3JtLCAkemVtX2NvbnRh
Y3RfZnJvbSwgJHplbV9jb250YWN0X2Vycm9yOwoKCWV4dHJhY3QobEF0dHMoYXJyYXkoCgkJ
J2RlZmF1bHQnCT0+ICcnLAoJCSdpc0Vycm9yJwk9PiAnJywKCQknbGFiZWwnCQk9PiB6ZW1f
Y29udGFjdF9nVHh0KCdlbWFpbCcpLAoJCSdtYXgnCQk9PiAxMDAsCgkJJ21pbicJCT0+IDAs
CgkJJ25hbWUnCQk9PiAnJywKCQkncmVxdWlyZWQnCT0+ICd5ZXMnLAoJCSdicmVhaycJCT0+
IGJyLAoJCSdzaXplJwkJPT4gJycKCSksICRhdHRzKSk7CgoJaWYgKGVtcHR5KCRuYW1lKSkK
CXsKCQkkbmFtZSA9IHN0cnRvbG93ZXIocHJlZ19yZXBsYWNlKCcvXFcvJywgJycsICRsYWJl
bCkpOwoJfQoKCSRlbWFpbCA9IHBzKCRuYW1lKTsKCglpZiAocHMoJ3plbV9jb250YWN0X3N1
Ym1pdCcpKQoJewogICAgICBpZiAoJHJlcXVpcmVkID09ICd5ZXMnIGFuZCAhZW1wdHkoJGVt
YWlsKSkgewoKCQlpZiAoIXByZWdfbWF0Y2goJy9eW1x3Ll8tXStAKFtcdy1dK1wuKStbXHct
XSskLycsICRlbWFpbCkpCgkJewoJCQkkemVtX2NvbnRhY3RfZXJyb3JbXSA9IHplbV9jb250
YWN0X2dUeHQoJ2ludmFsaWRfZW1haWwnLCAkZW1haWwpOwoJCQkkaXNFcnJvciA9ICJlcnJv
ckVsZW1lbnQiOwoJCX0KCgkJZWxzZWlmIChwcmVnX21hdGNoKCIvQCguKykkLyIsICRlbWFp
bCwgJG1hdGNoKSkKCQl7CgkJCSRkb21haW4gPSAkbWF0Y2hbMV07CgkJCSRteCA9IDA7CgoJ
CQlpZiAoaXNfY2FsbGFibGUoJ2dldG14cnInKSkKCQkJewoJCQkJJGR1bW15ID0gYXJyYXko
KTsKCQkJCSRteCA9IEBnZXRteHJyKCRkb21haW4sICRteCk7CgkJCX0KCgkJCWlmICghJG14
IGFuZCAoQGdldGhvc3RieW5hbWUoJGRvbWFpbikgPT0gJGRvbWFpbikpCgkJCXsKCQkJCSR6
ZW1fY29udGFjdF9lcnJvcltdID0gemVtX2NvbnRhY3RfZ1R4dCgnaW52YWxpZF9ob3N0Jywg
JGRvbWFpbik7CgkJCQkkaXNFcnJvciA9ICJlcnJvckVsZW1lbnQiOwoJCQl9CgoJCQllbHNl
CgkJCXsKCQkJCSR6ZW1fY29udGFjdF9mcm9tID0gJGVtYWlsOwoJCQl9CgkJfQoKCQllbHNl
CgkJewoJCQkkemVtX2NvbnRhY3RfZnJvbSA9ICRlbWFpbDsKCQl9CiAgICB9CiAgICB9CgoJ
cmV0dXJuIHplbV9jb250YWN0X3RleHQoYXJyYXkoCgkJJ2RlZmF1bHQnCT0+ICRlbWFpbCwK
CQknaXNFcnJvcicJPT4gJGlzRXJyb3IsCgkJJ2xhYmVsJwkJPT4gJGxhYmVsLAoJCSdtYXgn
CQk9PiAkbWF4LAoJCSdtaW4nCQk9PiAkbWluLAoJCSduYW1lJwkJPT4gJG5hbWUsCgkJJ3Jl
cXVpcmVkJwk9PiAkcmVxdWlyZWQsCgkJJ2JyZWFrJwkJPT4gJGJyZWFrLAoJCSdzaXplJwkJ
PT4gJHNpemUgICAgICAgCS8vIGNoYW5nZWQgJycgdG8gJHNpemUKCSkpOwp9CgpmdW5jdGlv
biB6ZW1fY29udGFjdF9zZWxlY3QoJGF0dHMpCnsKCWdsb2JhbCAkemVtX2NvbnRhY3RfZm9y
bSwgJHplbV9jb250YWN0X2Vycm9yOwoKCWV4dHJhY3QobEF0dHMoYXJyYXkoCgkJJ25hbWUn
CQk9PiAnJywJCS8vIGFkZGVkIG5hbWUKCQknYnJlYWsnCQk9PiAnICcsCgkJJ2RlbGltaXRl
cicJPT4gJywnLAoJCSdpc0Vycm9yJwk9PiAnJywKCQknbGFiZWwnCQk9PiB6ZW1fY29udGFj
dF9nVHh0KCdvcHRpb24nKSwKCQknbGlzdCcJCT0+IHplbV9jb250YWN0X2dUeHQoJ2dlbmVy
YWxfaW5xdWlyeScpLAoJCSdyZXF1aXJlZCcJPT4gJ3llcycsCgkJJ3NlbGVjdGVkJwk9PiAn
eWVzJwoJKSwgJGF0dHMpKTsKCglpZiAoZW1wdHkoJG5hbWUpKQoJewoJCSRuYW1lID0gc3Ry
dG9sb3dlcihwcmVnX3JlcGxhY2UoJy9cVy8nLCAnJywgJGxhYmVsKSk7Cgl9CgoJJGxpc3Qg
PSBhcnJheV9tYXAoJ3RyaW0nLCBzcGxpdCgkZGVsaW1pdGVyLCAkbGlzdCkpOwoKCSR2YWx1
ZSA9IHBzKCRuYW1lKSA/IHBzKCRuYW1lKSA6ICRzZWxlY3RlZDsKCglpZiAocHMoJ3plbV9j
b250YWN0X3N1Ym1pdCcpIGFuZCAkcmVxdWlyZWQgPT0gJ3llcycgYW5kIGVtcHR5KCR2YWx1
ZSkpCgl7CgkJJHplbV9jb250YWN0X2Vycm9yW10gPSB6ZW1fY29udGFjdF9nVHh0KCdmaWVs
ZF9taXNzaW5nJywgJGxhYmVsKTsKCQkkaXNFcnJvciA9ICJlcnJvckVsZW1lbnQiOwoJfQoK
CWVsc2VpZiAocHMoJG5hbWUpIGFuZCAhaW5fYXJyYXkoJHZhbHVlLCAkbGlzdCkpCgl7CgkJ
JHplbV9jb250YWN0X2Vycm9yW10gPSB6ZW1fY29udGFjdF9nVHh0KCdpbnZhbGlkX3ZhbHVl
JywgJGxhYmVsLCAkdmFsdWUpOwoJCSRpc0Vycm9yID0gImVycm9yRWxlbWVudCI7Cgl9CgoJ
ZWxzZWlmIChwcygkbmFtZSkpCgl7CgkJJHplbV9jb250YWN0X2Zvcm1bJGxhYmVsXSA9ICR2
YWx1ZTsKCX0KCgkkb3V0ID0gJyc7CgoJZm9yZWFjaCAoJGxpc3QgYXMgJGl0ZW0pCgl7CgkJ
JGl0ZW0gPSBodG1sc3BlY2lhbGNoYXJzKCRpdGVtKTsKCgkJaWYgKCRpdGVtID09ICR2YWx1
ZSkJCS8vIGNoYW5nZWQgJHNlbGVjdGVkIHRvICR2YWx1ZQoJCXsKCQkJJG91dCAuPSBuLnQu
JzxvcHRpb24gc2VsZWN0ZWQ9IjEiPicuJGl0ZW0uJzwvb3B0aW9uPic7CgkJfQoKCQllbHNl
CgkJewoJCQkkb3V0IC49IG4udC4nPG9wdGlvbj4nLiRpdGVtLic8L29wdGlvbj4nOwoJCX0K
CX0KCglpZiAoJHJlcXVpcmVkID09ICd5ZXMnKQoJewoJcmV0dXJuICc8bGFiZWwgZm9yPSIn
LiRuYW1lLiciIGNsYXNzPSJ6ZW1SZXF1aXJlZCcuJGlzRXJyb3IuJyAnLiRuYW1lLiciPicu
JGxhYmVsLic8L2xhYmVsPicuJGJyZWFrLgoJCW4uJzxzZWxlY3QgaWQ9IicuJG5hbWUuJyIg
bmFtZT0iJy4kbmFtZS4nIj4nLgoJCQkkb3V0LgoJCW4uJzwvc2VsZWN0Pic7Cgl9CgllbHNl
Cgl7CglyZXR1cm4gJzxsYWJlbCBmb3I9IicuJG5hbWUuJyIgY2xhc3M9IicuJG5hbWUuJyI+
Jy4kbGFiZWwuJzwvbGFiZWw+Jy4kYnJlYWsuCgkJbi4nPHNlbGVjdCBpZD0iJy4kbmFtZS4n
IiBuYW1lPSInLiRuYW1lLiciPicuCgkJCSRvdXQuCgkJbi4nPC9zZWxlY3Q+JzsKCX0KfQoK
ZnVuY3Rpb24gemVtX2NvbnRhY3RfY2hlY2tib3goJGF0dHMpCnsKCWdsb2JhbCAkemVtX2Nv
bnRhY3RfZm9ybSwgJHplbV9jb250YWN0X2Vycm9yOwoKCWV4dHJhY3QobEF0dHMoYXJyYXko
CgkJJ2JyZWFrJwkJPT4gJyAnLAoJCSdjaGVja2VkJwk9PiAnbm8nLAoJCSdpc0Vycm9yJwk9
PiAnJywKCQknbGFiZWwnCQk9PiB6ZW1fY29udGFjdF9nVHh0KCdjaGVja2JveCcpLAoJCSdu
YW1lJwkJPT4gJycsCgkJJ3JlcXVpcmVkJwk9PiAneWVzJwoJKSwgJGF0dHMpKTsKCglpZiAo
ZW1wdHkoJG5hbWUpKQoJewoJCSRuYW1lID0gc3RydG9sb3dlcihwcmVnX3JlcGxhY2UoJy9c
Vy8nLCAnJywgJGxhYmVsKSk7Cgl9CgoJJHZhbHVlID0gcHMoJ3plbV9jb250YWN0X3N1Ym1p
dCcpID8gKGJvb2wpIHBzKCRuYW1lKSA6ICcnOwoKCWlmIChwcygnemVtX2NvbnRhY3Rfc3Vi
bWl0JykgYW5kICRyZXF1aXJlZCA9PSAneWVzJyBhbmQgZW1wdHkoJHZhbHVlKSkKCXsKCQkk
emVtX2NvbnRhY3RfZXJyb3JbXSA9IHplbV9jb250YWN0X2dUeHQoJ2ZpZWxkX21pc3Npbmcn
LCAkbGFiZWwpOwoJCSRpc0Vycm9yID0gImVycm9yRWxlbWVudCI7Cgl9CgoJZWxzZWlmIChw
cygnemVtX2NvbnRhY3Rfc3VibWl0JykpCgl7CgkJJHplbV9jb250YWN0X2Zvcm1bJGxhYmVs
XSA9ICgkdmFsdWUpID8gZ1R4dCgneWVzJykgOiBnVHh0KCdubycpOwoJfQoKCWlmICgkcmVx
dWlyZWQgPT0gJ3llcycpCgl7CglyZXR1cm4gJzxpbnB1dCB0eXBlPSJjaGVja2JveCIgaWQ9
IicuJG5hbWUuJyIgY2xhc3M9InplbVJlcXVpcmVkJy4kaXNFcnJvci4nIiBuYW1lPSInLiRu
YW1lLiciJy4KCQkoICggKCRjaGVja2VkID09ICd5ZXMnKSBhbmQgJHZhbHVlKSA/ICcgY2hl
Y2tlZD0iY2hlY2tlZCIgLz4nIDogJyAvPicpLiRicmVhay4KCQknPGxhYmVsIGZvcj0iJy4k
bmFtZS4nIiBjbGFzcz0iemVtUmVxdWlyZWQnLiRpc0Vycm9yLicgJy4kbmFtZS4nIj4nLiRs
YWJlbC4nPC9sYWJlbD4nOwoJfQoJZWxzZQoJewoJcmV0dXJuICc8aW5wdXQgdHlwZT0iY2hl
Y2tib3giIGlkPSInLiRuYW1lLiciIG5hbWU9IicuJG5hbWUuJyInLgoJCSggKCAoJGNoZWNr
ZWQgPT0gJ3llcycpIGFuZCAkdmFsdWUpID8gJyBjaGVja2VkPSJjaGVja2VkIiAvPicgOiAn
IC8+JykuJGJyZWFrLgoJCSc8bGFiZWwgZm9yPSInLiRuYW1lLiciIGNsYXNzPSInLiRuYW1l
LiciPicuJGxhYmVsLic8L2xhYmVsPic7Cgl9Cn0KCmZ1bmN0aW9uIHplbV9jb250YWN0X3Nl
cnZlcmluZm8oJGF0dHMpCnsKCWdsb2JhbCAkemVtX2NvbnRhY3RfZm9ybSwgJHplbV9jb250
YWN0X2Vycm9yOwoKCWV4dHJhY3QobEF0dHMoYXJyYXkoCgkJJ2xhYmVsJwkJPT4gJycsCgkJ
J25hbWUnCQk9PiAnJwoJKSwgJGF0dHMpKTsKCglpZiAoZW1wdHkoJG5hbWUpKQoJewoJCSRu
YW1lID0gc3RydG9sb3dlcihwcmVnX3JlcGxhY2UoJy9cVy8nLCAnJywgJGxhYmVsKSk7Cgl9
CgoJaWYgKCRuYW1lIGFuZCBwcygnemVtX2NvbnRhY3Rfc3VibWl0JykpCgl7CgkJJHplbV9j
b250YWN0X2Zvcm1bJGxhYmVsXSA9IHNlcnZlclNldCgkbmFtZSk7Cgl9Cn0KCmZ1bmN0aW9u
IHplbV9jb250YWN0X3NlY3JldCgkYXR0cywgJHRoaW5nID0gJycpCnsKCWdsb2JhbCAkemVt
X2NvbnRhY3RfZm9ybSwgJHplbV9jb250YWN0X2Vycm9yOwoKCWV4dHJhY3QobEF0dHMoYXJy
YXkoCgkJJ25hbWUnCQk9PiAnJywKCQkndmFsdWUnCQk9PiAnJwoJKSwgJGF0dHMpKTsKCglp
ZiAoJHZhbHVlKQoJewoJCSR2YWx1ZSA9IGh0bWxzcGVjaWFsY2hhcnMoJHZhbHVlKTsKCX0K
CgllbHNlaWYgKCR0aGluZykKCXsKCQkkdmFsdWUgPSBodG1sc3BlY2lhbGNoYXJzKHRyaW0o
cGFyc2UoJHRoaW5nKSkpOwoJfQoKCWlmIChwcygkbmFtZSkpCgl7CgkJJHplbV9jb250YWN0
X2Zvcm1bJGxhYmVsXSA9ICR2YWx1ZTsKCX0KCglyZXR1cm4gJzxpbnB1dCB0eXBlPSJoaWRk
ZW4iIGlkPSInLiRuYW1lLiciIG5hbWU9IicuJG5hbWUuJyIgdmFsdWU9IicuJHZhbHVlLici
IC8+JzsKfQoKZnVuY3Rpb24gemVtX2NvbnRhY3Rfc2VuZF9hcnRpY2xlKCRhdHRzKSB7CgoJ
aWYgKCFpc3NldCgkX1JFUVVFU1RbJ3plbV9jb250YWN0X3NlbmRfYXJ0aWNsZSddKSkgewoJ
CSRsaW5rdGV4dCA9IChlbXB0eSgkYXR0c1snbGlua3RleHQnXSkpID8gJ3NlbmQgYXJ0aWNs
ZScgOiAkYXR0c1snbGlua3RleHQnXTsKCQkkam9pbiA9IChlbXB0eSgkX1NFUlZFUlsnUVVF
UllfU1RSSU5HJ10pKSA/ICc/JyA6ICcmYW1wOyc7CgkJJGhyZWYgPSAkX1NFUlZFUlsnUkVR
VUVTVF9VUkknXS4kam9pbi4nemVtX2NvbnRhY3Rfc2VuZF9hcnRpY2xlPXllcyc7CgkJcmV0
dXJuICc8YSBocmVmPSInLiRocmVmLiciPicuJGxpbmt0ZXh0Lic8L2E+JzsKCX0KCXJldHVy
bjsKCn0KCmZ1bmN0aW9uIHplbV9jb250YWN0X3N1Ym1pdCgkYXR0cykKewoJZ2xvYmFsICR6
ZW1fY29udGFjdF9ub25jZSwgJHplbV9jb250YWN0X2Vycm9yOwoKCWV4dHJhY3QobEF0dHMo
YXJyYXkoCgkJJ2xhYmVsJwkJPT4gemVtX2NvbnRhY3RfZ1R4dCgnc2VuZCcpCgkpLCAkYXR0
cykpOwoKCXJldHVybiAnPGlucHV0IHR5cGU9InN1Ym1pdCIgaWQ9InplbVN1Ym1pdCIgbmFt
ZT0iemVtX2NvbnRhY3Rfc3VibWl0IiB2YWx1ZT0iJy4kbGFiZWwuJyIgLz4nOwp9CgpjbGFz
cyB6ZW1jb250YWN0X2V2YWx1YXRpb24gewoKCXZhciAkc3RhdHVzOwoKCWZ1bmN0aW9uIHpl
bWNvbnRhY3RfZXZhbHVhdGlvbigpIHsKCQkkdGhpcy0+c3RhdHVzID0gMDsKCX0KCglmdW5j
dGlvbiBhZGRfemVtY29udGFjdF9zdGF0dXMoJGNoZWNrKSB7CgkJJHRoaXMtPnN0YXR1cyA9
ICRjaGVjazsKCX0KCglmdW5jdGlvbiBnZXRfemVtY29udGFjdF9zdGF0dXMoKSB7CgkJcmV0
dXJuICR0aGlzLT5zdGF0dXM7Cgl9Cgp9CgpmdW5jdGlvbiAmZ2V0X3plbWNvbnRhY3RfZXZh
bHVhdG9yKCkgewoKCXN0YXRpYyAkaW5zdGFuY2U7CgoJLy8gSWYgdGhlIGluc3RhbmNlIGlz
IG5vdCB0aGVyZSwgY3JlYXRlIG9uZQoJaWYoIWlzc2V0KCRpbnN0YW5jZSkpIHsKCQkkaW5z
dGFuY2UgPSBuZXcgemVtY29udGFjdF9ldmFsdWF0aW9uKCk7Cgl9CglyZXR1cm4gJGluc3Rh
bmNlOwoKfQoiO3M6MzoibWQ1IjtzOjMyOiIzODRkNWFjZDZhZWM5NDUxOTRmMmJlNzRiMzE1
ODQxYiI7fQ==
